Sourcify (sourcify.dev) is a Solidity source code verification service for Ethereum smart contracts.
Different than other verification services, Sourcify leverages the Solidity metadata file to "fully verify" the contracts.
Sourcify mainly consists of:
- sourcify-server - an HTTP server to do verifications and store the verified contracts for supported chains through an API
- sourcify-ui - a web UI to interact with the server, lookup, and verify contracts
- sourcify-monitor - a standalone service that listens to various EVM chains for new contract creations and automatically submits them to a Sourcify API for verification.
- Packages:
- [@ethereum-sourcify/lib-sourcify]: The core library for Sourcify. It contains the logic to verify contracts.
- [@ethereum-sourcify/bytecode-utils]: A library to extract and parse the CBOR encoded metadata from the bytecode.
- [@ethereum-sourcify/contract-call-decoder]: A library to decode the contract calls from the transaction data and show human-readable information using NatSpec comments (currently stale).
The project aims to serve as a public good infrastructure with fully open-source development and an open and accessible contract repository of verified contracts. Anyone can easily run their own Sourcify server and monitor to verify contracts on their own. We also aim to provide tooling to verify contracts easier on different platforms e.g. browers.
ℹ️ This monorepo the main modules. The sourcifyeth Github organization contains all other auxiliary services and components.
For more details refer to docs.sourcify.dev
🔍 Check out docs F.A.Q. and use search in docs.
💬 Chat with us on Matrix chat or Discord
🐦 Follow us and help us spread the word on Twitter.
If you'd like to add a new chain support to Sourcify please follow the chain support instructions in docs.