Giter Club home page Giter Club logo

zksync-dapp-checkout's Introduction

zkSync Checkout — trustable permissionless DeFi payment gateway

zkSync Checkout helps anyone permission-less adopt checkout backed by zkSync, receive payments automatically and benefit from all the advantage of zkSync Rollup: speed of the transaction, times lower cost of a single transaction, simplicity of withdrawal fund to the onchain-wallet.

Deployment

zkSync uses firebase hosting for all it's dApps. Resource targets for the zkCheckout are:

Available Hosts

Initial Setup / Static version generation

# install dependencies
$ sh cli-dev.sh ci

# Populate .env file as of goerli connection && serve with hot reload at localhost:3000
$ yarn dev

# static version generation
$ yarn ci:build:goerli
# afterward you'll have prepared distributive in /public folder

# generate static for the mainnet release
$ sh cli-dev.sh ci
$ yarn ci:build:mainnet
# afterward you'll have prepared distributive in /public folder

Dev toolset

cli-dev.sh

This helper-script is used to simplify regular tasks when developing or using the package:

# removes all generated directories & run package installation with the yarn2.* based on stored yarn.lock with the modifier --check-cache
$ sh cli-dev.sh ci

# drops node_modules, .yarn/cache .yarn/build-state.yml .yarn/install-state.gz & trigger cache flushing (yarn cache clean --all)
$ sh cli-dev.sh clean yarn

# drops .nuxt and clear public directory
$ sh cli-dev.sh clean nuxt

Linting & checking

# Run stylelint with --fix modifier
$ yarn run lint-style:fix

# Run eslint with --fix modifier
$ yarn run lint-ts:fix

# Formats all of the code w/t stored style rules by running prettier
$ yarn format:prettier

# Check spelling in src files
$ yarn spell-check

For detailed explanation on how things work, check out Nuxt.js docs.


Release CI

This sharable configuration conforms to angular standard

  • Using @semantic-release/commit-analyzer ensures that commits are conformed to the conventional commits specification.
    • PATCH version created if any of build, ci, chore, docs, refactor, style, test commit types pushed to master
    • MINOR version created if fix commit type pushed MAJOR version created if feat commit type pushed
    • MAJOR version created if feat commit type pushed
  • By default, config used publishes the new version to NPM. But in zkSync's case release flow differs from the deployment flow.
    • Bumps a version in package.json.
    • Generates or updates a changelog file including all PATCH keywords (not included in default angular package).
    • Releases new release for the GitHub repo

Solutions used

Libraries used

zksync-dapp-checkout's People

Contributors

andriidrebot avatar bohdan-struk-matterlabs avatar jackhamer09 avatar keriat avatar otani88 avatar semantic-release-bot avatar shamatar avatar stanislavbreadless avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.