{"id":21970046,"url":"https://github.com/scroll-tech/scroll","last_synced_at":"2025-06-25T02:02:35.537Z","repository":{"id":192515487,"uuid":"533964160","full_name":"scroll-tech/scroll","owner":"scroll-tech","description":"Scroll's Monorepo","archived":false,"fork":false,"pushed_at":"2025-06-19T05:54:10.000Z","size":41620,"stargazers_count":730,"open_issues_count":17,"forks_count":624,"subscribers_count":40,"default_branch":"develop","last_synced_at":"2025-06-19T06:34:17.148Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/scroll-tech.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2022-09-07T22:34:19.000Z","updated_at":"2025-06-19T05:54:12.000Z","dependencies_parsed_at":"2023-09-26T11:49:14.830Z","dependency_job_id":"af3e2be9-17b2-43f8-9715-5035cf52f32f","html_url":"https://github.com/scroll-tech/scroll","commit_stats":null,"previous_names":["scroll-tech/scroll"],"tags_count":595,"template":false,"template_full_name":null,"purl":"pkg:github/scroll-tech/scroll","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scroll-tech%2Fscroll","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scroll-tech%2Fscroll/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scroll-tech%2Fscroll/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scroll-tech%2Fscroll/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scroll-tech","download_url":"https://codeload.github.com/scroll-tech/scroll/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scroll-tech%2Fscroll/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260704444,"owners_count":23049460,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-29T14:29:53.421Z","updated_at":"2025-06-25T02:02:35.513Z","avatar_url":"https://github.com/scroll-tech.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Scroll Monorepo\n\n[![rollup](https://github.com/scroll-tech/scroll/actions/workflows/rollup.yml/badge.svg)](https://github.com/scroll-tech/scroll/actions/workflows/rollup.yml)\n[![bridge-history](https://github.com/scroll-tech/scroll/actions/workflows/bridge_history_api.yml/badge.svg)](https://github.com/scroll-tech/scroll/actions/workflows/bridge_history_api.yml)\n[![coordinator](https://github.com/scroll-tech/scroll/actions/workflows/coordinator.yml/badge.svg)](https://github.com/scroll-tech/scroll/actions/workflows/coordinator.yml)\n[![prover](https://github.com/scroll-tech/scroll/actions/workflows/prover.yml/badge.svg)](https://github.com/scroll-tech/scroll/actions/workflows/prover.yml)\n[![integration](https://github.com/scroll-tech/scroll/actions/workflows/integration.yml/badge.svg)](https://github.com/scroll-tech/scroll/actions/workflows/integration.yml)\n[![codecov](https://codecov.io/gh/scroll-tech/scroll/branch/develop/graph/badge.svg?token=VJVHNQWGGW)](https://codecov.io/gh/scroll-tech/scroll)\n\n\u003ca href=\"https://scroll.io\"\u003eScroll\u003c/a\u003e is a zkRollup Layer 2 dedicated to enhance Ethereum scalability through a bytecode-equivalent [zkEVM](https://github.com/scroll-tech/zkevm-circuits) circuit. This monorepo encompasses essential infrastructure components of the Scroll protocol. It contains the L1 and L2 contracts, the rollup node, the prover client, and the prover coordinator.\n\n## Directory Structure\n\n\u003cpre\u003e\n├── \u003ca href=\"./bridge-history-api/\"\u003ebridge-history-api\u003c/a\u003e: Bridge history service that collects deposit and withdraw events from both L1 and L2 chains and generates withdrawal proofs\n├── \u003ca href=\"./common/\"\u003ecommon\u003c/a\u003e: Common libraries and types\n├── \u003ca href=\"./coordinator/\"\u003ecoordinator\u003c/a\u003e: Prover coordinator service that dispatches proving tasks to provers\n├── \u003ca href=\"./database\"\u003edatabase\u003c/a\u003e: Database client and schema definition\n├── \u003ca href=\"./prover\"\u003eprover\u003c/a\u003e: Prover client that runs proof generation for zkEVM circuit and aggregation circuit\n├── \u003ca href=\"./rollup\"\u003erollup\u003c/a\u003e: Rollup-related services\n├── \u003ca href=\"https://github.com/scroll-tech/scroll-contracts.git\"\u003escroll-contracts\u003c/a\u003e: solidity code for Scroll L1 bridge and rollup contracts and L2 bridge and pre-deployed contracts.\n└── \u003ca href=\"./tests\"\u003etests\u003c/a\u003e: Integration tests\n\u003c/pre\u003e\n\n## Contributing\n\nWe welcome community contributions to this repository. Before you submit any issues or PRs, please read the [Code of Conduct](CODE_OF_CONDUCT.md) and the [Contribution Guideline](CONTRIBUTING.md).\n\n## Prerequisites\n+ Go 1.21\n+ Rust (for version, see [rust-toolchain](./common/libzkp/impl/rust-toolchain))\n+ Hardhat / Foundry\n+ Docker\n\nTo run the tests, it is essential to first pull or build the required Docker images. Execute the following commands in the root directory of the repository to do this:\n\n```bash\ndocker pull postgres\nmake dev_docker\n```\n\n## Unit Tests\n\nRun the tests using the following commands:\n\n```bash\ngo test -v -race -covermode=atomic scroll-tech/rollup/...\ngo test -tags=\"mock_verifier\" -v -race -covermode=atomic scroll-tech/coordinator/...\ngo test -v -race -covermode=atomic scroll-tech/database/...\ngo test -v -race -covermode=atomic scroll-tech/common/...\n```\n\n## License\n\nScroll Monorepo is licensed under the [MIT](./LICENSE) license.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscroll-tech%2Fscroll","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscroll-tech%2Fscroll","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscroll-tech%2Fscroll/lists"}