zkAuth Contracts
This repo holds the smart contracts, tests and deployment scripts for the zkAuth protocol.
Architecture
TODO: Add high level architecture diagram with the multiple components and explaining the overall flow.
Getting Started
Requirements
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.
Installation
Clone the repository:
git clone https://github.com/threesigmaxyz/zksync-oauth-contracts.git
cd zksync-oauth-contracts
make install
Usage
Instruction on how to manage a local development environment can be found here.
Testing
To run all tests, run the following command:
make test
Unit Tests
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:
make unit-test
Integration Tests
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:
make integration-test
About Us
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.