Contribution track
Welcome to the ZKsync Contributors Track! The purpose of this track is to accelerate your journey into the thriving ZKsync development landscape. As a fully open-source project, we believe in community-driven development, and that means anyone from anywhere can contribute to shaping the future of ZKsync.
This track aims to guide you in discovering various aspects of our project, inspire you to contribute in the ways that interest you most, and provide a pathway to connect with the ZKsync community.
Open-source repositories
Here's a list of our key open-source repositories that you can contribute to:
ZKsync Era
- ZKsync Era: Node implementation for ZKsync Era.
Smart Contracts
- era-contracts: Submodule containing the smart contracts for ZKsync Era.
Circuit Implementation
- zksync-protocol: Houses the ZKsync Era protocol implementation, including VM and circuits.
Testing and debugging
- era-test-node: An in-memory node designed for integration testing and debugging.
Development tools
- zksync-cli: CLI tool that aims to simplify the development process on ZKsync.
- hardhat-zksync: Hardhat plugins tailored for the ZKsync Network.
Documentation
- zksync-web-era-docs: The go-to source for official ZKsync documentation.
SDK and explorers
- block-explorer: The official block explorer for navigating the ZKsync network.
- zksync-sdk: Software Development Kit for ease of integration with the ZKsync network.
Feel free to explore these repositories, and don't hesitate to contribute!
Why the contributors track?
Purpose
- Facilitate easy entry for external contributors into ZKsync's development ecosystem.
- Offer a structured approach to involvement, reducing the initial overwhelm of diving into a new project.
- Build a strong, diverse, and global community of developers who are excited about ZKsync.
Who is it for?
- Developers interested in blockchain and layer 2 solutions.
- Open-source enthusiasts looking to contribute to a growing project.
- Those interested in contract development, dApp development, ZKsync Era, and more.
The track
Getting started
1. Introduce yourself on ZKsync Discord
- Join our Discord channel and say 'hi' in the
#introductions
thread. Share what interests you and what you're hoping to learn or contribute.
2. Follow ZKsync Developers on X (formerly Twitter)
- Keep up to date with the latest news, updates, and releases by following us on X.
3. Dive into our official documentation
- Immerse yourself in our comprehensive official documentation to acquire essential knowledge on ZKsync. If you discover a typo, syntax error, or see room for improvement, submit a Pull Request to contribute to its enhancement.
Dive into development
4. Deploy your first contract using ZKsync-CLI
- Familiarize yourself with the ZKsync-CLI tool and deploy your first contract on the ZKsync Era testnet.
5. Tackle a 'Good First Issue'
- Start contributing immediately by taking on a "Good First Issue" from any of our GitHub repositories. This is a great way to get hands-on experience and a feel for the project.
Community engagement
6. Participate in ZKsync Developer discussions
- Join the discourse on GitHub discussions or other community forums to provide answers, ask questions, or share insights.
7. Submit a community tutorial or guide
- Help others by sharing your knowledge. Write a tutorial or guide and submit it to our GitHub project for Community Code.