Smart contracts for zkAuth project.
npm install @threesigmaxyz/zkauth-contracts[gha]: https://github.com/threesigmaxyz/zksync-oauth-contracts/actions
[gha-badge]: https://github.com/threesigmaxyz/zksync-oauth-contracts/actions/workflows/publish.yml/badge.svg
[license]: LICENSE.md
[license-badge]: https://img.shields.io/badge/License-MIT-blue.svg
This repo holds the smart contracts, tests and deployment scripts for the zkAuth protocol.
TODO: Add high level architecture diagram with the multiple components and explaining the overall flow.
In order to run the tests and deployment scripts you must install the following:
- Git - A distributed version control system.
- Node.js - A JavaScript runtime environment.
- Hardhat - A toolkit for Ethereum application development.
- Foundry - Development toolkit, akin to Hardhat.
- Docker - A containerization platform.
Additionally, you should have make installed.
Clone the repository:
``sh`
git clone https://github.com/threesigmaxyz/zksync-oauth-contracts.git
cd zksync-oauth-contracts
make install
Instruction on how to manage a local development environment can be found here.
To run all tests, run the following command:
`sh`
make test
Unit tests are located in the test/unit folder. For unit testing we using the Foundry
framework, which does not test the smart contracts against a zkSync Era node. To execute all unit tests, run the
following command:
`sh`
make unit-test
Integration tests are located in the test/integration folder. For integration testing we using the
Hardhat framework, which tests the smart contracts against a zkSync Era node. To execute all
integration tests, run the following command:
`sh``
make integration-test
Three Sigma is a venture builder firm focused on blockchain engineering, research, and
investment. Our mission is to advance the adoption of blockchain technology and contribute towards the healthy
development of the Web3 space. If you are interested in joining our team, please contact us
here.