{"id":13620982,"url":"https://github.com/tintinweb/smart-contract-sanctuary","last_synced_at":"2025-05-15T16:04:25.297Z","repository":{"id":37417602,"uuid":"137944558","full_name":"tintinweb/smart-contract-sanctuary","owner":"tintinweb","description":"🐦🌴🌴🌴🦕 A home for ethereum smart contracts. 🏠","archived":false,"fork":false,"pushed_at":"2024-06-28T00:05:40.000Z","size":12796409,"stargazers_count":1558,"open_issues_count":7,"forks_count":277,"subscribers_count":47,"default_branch":"master","last_synced_at":"2025-04-07T20:12:10.398Z","etag":null,"topics":["arbitrum","avalanche-c-chain","binance-smart-chain","blockchain","ethereum","ethereum-contract","maticnetwork","polygon","smart-contracts","solidity","tron-protocol"],"latest_commit_sha":null,"homepage":"https://tintinweb.github.io/smart-contract-sanctuary/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tintinweb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"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},"funding":{"github":["tintinweb"],"custom":["Ƀ:1AZMeGVfCBbYwVYyG9s79pJDyocTZgiApa","Ξth:0x438B38E30eF117C15fBfF833f9C2c70182925815"]}},"created_at":"2018-06-19T20:53:49.000Z","updated_at":"2025-04-07T18:51:13.000Z","dependencies_parsed_at":"2023-02-16T04:31:29.612Z","dependency_job_id":"6c6f5fab-683a-444f-8d1f-75ee29409ddc","html_url":"https://github.com/tintinweb/smart-contract-sanctuary","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tintinweb%2Fsmart-contract-sanctuary","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tintinweb%2Fsmart-contract-sanctuary/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tintinweb%2Fsmart-contract-sanctuary/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tintinweb%2Fsmart-contract-sanctuary/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tintinweb","download_url":"https://codeload.github.com/tintinweb/smart-contract-sanctuary/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254374407,"owners_count":22060610,"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":["arbitrum","avalanche-c-chain","binance-smart-chain","blockchain","ethereum","ethereum-contract","maticnetwork","polygon","smart-contracts","solidity","tron-protocol"],"created_at":"2024-08-01T21:01:01.449Z","updated_at":"2025-05-15T16:04:25.272Z","avatar_url":"https://github.com/tintinweb.png","language":"Python","funding_links":["https://github.com/sponsors/tintinweb","Ƀ:1AZMeGVfCBbYwVYyG9s79pJDyocTZgiApa","Ξth:0x438B38E30eF117C15fBfF833f9C2c70182925815"],"categories":["Tools","Smart Contracts","Python"],"sub_categories":["Solidity"],"readme":"\u003csup\u003e\n \u003cb\u003eSmart Contract Sanctuary - MultiRepo / Index\u003c/b\u003e\u003cbr\u003e\n ⚠️\u003cb\u003eUPDATE:\u003c/b\u003e Repo layout changed! see \u003ca href=\"https://github.com/tintinweb/smart-contract-sanctuary/issues/13\"\u003e#13\u003c/a\u003e (\u003ca href=\"https://github.com/tintinweb/smart-contract-sanctuary/releases/tag/v1\"\u003ev1-layout\u003c/a\u003e)\n\u003c/sup\u003e\n\n# Smart Contract Sanctuary\n🐦🌴🌴🌴🦕 A home for ethereum smart contracts verified on Etherscan. 🏠\n\u003cbr\u003e\u003cbr\u003e\n\u003csup\u003e\n**⇝** This is the **index repository** for the **smart-contract-sanctuary**. 🔖 Bookmark this repo.\u003cbr\u003e\n**⇝** Chain-specific sub-repos and the index are updated twice a day.\u003cbr\u003e\n**⇝** Expect a full, recursive check-out to take 2GB+ disk space.\u003cbr\u003e\n\u003c/sup\u003e\n\n## Usage\n\nThe repo is configured for use with `git+ssh` (much more stable and faster).\n\n#### First time - clone the index and checkout all chain-specific sub repositories from scratch:\n\n```console\n⇒  git clone --recursive --depth=1 git@github.com:tintinweb/smart-contract-sanctuary.git\n```\n\n\u003csub\u003e also see https://git-scm.com/docs/git-submodule for more options\u003c/sub\u003e\n\n\n#### Existing repository but submodules never initialized - checkout submodules and update all chain-specific sub repositories:\n\n```console\n⇒  git submodule update --init --remote --depth=1 --progress\n```\n\n#### Existing repository with submodules - update all chain-specific sub repositories:\n\n```console\n⇒  git submodule update --remote --progress\n```\n\n## Layout\n\n| Folder       | Description   |\n| ------------ | ------------- |\n| _docs        | autogenerated stats; static github page |\n| \u0026lt;chain\u0026gt;\u003csub\u003e/contracts\u003c/sub\u003e | Chain specific smart contracts |\n| ↳ [ethereum](https://github.com/tintinweb/smart-contract-sanctuary-ethereum)\u003csub\u003e/contracts\u003c/sub\u003e | Git SubModule 👉 https://github.com/tintinweb/smart-contract-sanctuary-ethereum |\n| ↳ [arbitrum](https://github.com/tintinweb/smart-contract-sanctuary-arbitrum)\u003csub\u003e/contracts\u003c/sub\u003e | Git SubModule 👉 https://github.com/tintinweb/smart-contract-sanctuary-arbitrum|\n| ↳ [avalanche](https://github.com/tintinweb/smart-contract-sanctuary-avalanche)\u003csub\u003e/contracts\u003c/sub\u003e | Git SubModule 👉 https://github.com/tintinweb/smart-contract-sanctuary-avalanche|\n| ↳ [bsc](https://github.com/tintinweb/smart-contract-sanctuary-bsc)\u003csub\u003e/contracts\u003c/sub\u003e | Git SubModule 👉 https://github.com/tintinweb/smart-contract-sanctuary-bsc|\n| ↳ [fantom](https://github.com/tintinweb/smart-contract-sanctuary-fantom)\u003csub\u003e/contracts\u003c/sub\u003e | Git SubModule 👉 https://github.com/tintinweb/smart-contract-sanctuary-fantom|\n| ↳ [polygon](https://github.com/tintinweb/smart-contract-sanctuary-polygon)\u003csub\u003e/contracts\u003c/sub\u003e | Git SubModule 👉 https://github.com/tintinweb/smart-contract-sanctuary-polygon|\n| ↳ [tron](https://github.com/tintinweb/smart-contract-sanctuary-tron)\u003csub\u003e/contracts\u003c/sub\u003e | Git SubModule 👉 https://github.com/tintinweb/smart-contract-sanctuary-tron|\n| ↳ [optimism](https://github.com/tintinweb/smart-contract-sanctuary-optimism)\u003csub\u003e/contracts\u003c/sub\u003e | Git SubModule 👉 https://github.com/tintinweb/smart-contract-sanctuary-optimism|\n| ↳ [celo](https://github.com/tintinweb/smart-contract-sanctuary-celo)\u003csub\u003e/contracts\u003c/sub\u003e | Git SubModule 👉 https://github.com/tintinweb/smart-contract-sanctuary-celo|\n| \u0026lt;chain\u0026gt;\u003csub\u003e/utils\u003c/sub\u003e | Chain specific support scripts |\n\n\n##### 📂 \u0026lt;chain\u0026gt;/contracts\n\nContains smart contract sources for various networks, grouped by the first two chars of the contract address.\nFiles are named in the format `\u003caddress\u003e_\u003csource_unit_name\u003e`, e.g. `0f0c3fedb6226cd5a18826ce23bec92d18336a98_URToken.sol`\n\nSome contracts are listed in `contracts.json`, but the file-system may contain more files than what is listed in this summary. Rely on the folder/file structure for a full list. \nThis repo used to auto submit contracts to [4byte.directory](https://www.4byte.directory/).\n\n\n##### 📂 \u0026lt;chain\u0026gt;/utils\n\nSupport scripts for various activies like dumping smart contracts from public sources (etherscan.io, etherchain.com)\n\n**requires:** `pip install -r requirements.txt`\n\n###### Dev Notes\n\nTo use [List of Verified Contract addresses with an OpenSource license](https://etherscan.io/exportData?type=open-source-contract-codes), you can download the csv file, add it to the util folder, and run `parse_download_contracts_etherscan_io.py` (with your etherscan API). This will add the new contracts to the appropriate folder\n\n## 👩‍🔬 Data Science Tools\n\n* [🧠 SolGrep](https://github.com/tintinweb/solgrep) - A scriptable semantic grep utility for solidity (crunch numbers, find specific contracts, extract data)\n* [🐞 semgrep](https://semgrep.dev/) - Semgrep is a fast, open-source, static analysis tool for finding bugs and enforcing code standards at editor, commit, and CI time, and now supports **Solidity**! ❤️ Thanks [@JoranHonig](https://github.com/JoranHonig) for contributing the [semgrep solidity parser](https://github.com/JoranHonig/tree-sitter-solidity).\n* [🌟 Sourcegraph](https://sourcegraph.com/search?q=context:global+repo:tintinweb/smart-contract-sanctuary*+file:/mainnet/\u0026patternType=literal) - A powerful online code search service that can be used to search the sanctuary without cloning.\n\n## 🎓 Citation\n\nIf you are using this dataset in your research and paper, here's how you can cite this dataset: \n\n- APA6\n```\nOrtner, M., Eskandari, S. (n.d.). Smart Contract Sanctuary. Retrieved from https://github.com/tintinweb/smart-contract-sanctuary.\n```\n\n- LateX (Bib)\n```\n @article{smart_contract_sanctuary, \n          title={Smart Contract Sanctuary}, \n          url={https://github.com/tintinweb/smart-contract-sanctuary}, \n          author={Ortner, Martin and Eskandari, Shayan}} \n ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftintinweb%2Fsmart-contract-sanctuary","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftintinweb%2Fsmart-contract-sanctuary","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftintinweb%2Fsmart-contract-sanctuary/lists"}