{"id":15626322,"url":"https://github.com/vectorized/dn404","last_synced_at":"2025-05-14T21:07:09.891Z","repository":{"id":222190078,"uuid":"755422883","full_name":"Vectorized/dn404","owner":"Vectorized","description":"Implementation of a co-joined ERC20 and ERC721 pair.","archived":false,"fork":false,"pushed_at":"2025-02-19T02:51:43.000Z","size":909,"stargazers_count":505,"open_issues_count":17,"forks_count":157,"subscribers_count":14,"default_branch":"main","last_synced_at":"2025-05-08T21:17:00.314Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Solidity","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/Vectorized.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":"audits/guardian-audits-report.pdf","citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-10T06:34:26.000Z","updated_at":"2025-05-02T22:42:25.000Z","dependencies_parsed_at":"2024-02-14T21:33:52.063Z","dependency_job_id":"8f1f7fd8-43b9-4575-b318-8e08e68ef700","html_url":"https://github.com/Vectorized/dn404","commit_stats":{"total_commits":126,"total_committers":16,"mean_commits":7.875,"dds":0.3015873015873016,"last_synced_commit":"99eeb16a1694591335cf6884c11440d590a2e0ae"},"previous_names":["vectorized/dn404"],"tags_count":25,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vectorized%2Fdn404","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vectorized%2Fdn404/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vectorized%2Fdn404/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vectorized%2Fdn404/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Vectorized","download_url":"https://codeload.github.com/Vectorized/dn404/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254227612,"owners_count":22035669,"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-10-03T10:11:56.462Z","updated_at":"2025-05-14T21:07:04.773Z","avatar_url":"https://github.com/Vectorized.png","language":"Solidity","readme":"# DN404 🥜\n\n[![NPM][npm-shield]][npm-url]\n[![CI][ci-shield]][ci-url]\n\nDN404 is an implementation of a co-joined ERC20 and ERC721 pair.\n\nTo learn more about these dual nature token pairs, you can read the full [ERC-7631 spec](https://eips.ethereum.org/EIPS/eip-7631).\n\n- Full compliance with the ERC20 and ERC721 specifications.\n- Transfers on one side will be reflected on the other side.\n- Pretty optimized.\n\n## Installation\n\nTo install with [**Foundry**](https://github.com/gakonst/foundry):\n\n```sh\nforge install vectorized/dn404\n```\n\nTo install with [**Hardhat**](https://github.com/nomiclabs/hardhat):\n\n```sh\nnpm install dn404\n```\n\n## Contracts\n\nThe Solidity smart contracts are located in the `src` directory.\n\n```ml\nsrc\n├─ DN404 — \"ERC20 contract for DN404\"\n├─ DN404Mirror — \"ERC721 contract for DN404\"\n├─ DN420 — \"Single-contract ERC20 ERC1155 chimera\"\n└─ example\n   ├─ SimpleDN404 — \"Simple DN404 example as ERC20\"\n   └─ NFTMintDN404 — \"Simple DN404 example as ERC721\"\n```\n\n## Contributing\n\nFeel free to make a pull request.\n\nGuidelines same as [Solady's](https://github.com/Vectorized/solady/issues/19).\n\n## Safety\n\nThis is **experimental software** and is provided on an \"as is\" and \"as available\" basis.\n\nWe **do not give any warranties** and **will not be liable for any loss** incurred through any use of this codebase.\n\nWhile DN404 has been heavily tested, there may be parts that exhibit unexpected emergent behavior when used with other code, or break in future Solidity versions.\n\nPlease always include your own thorough tests when using DN404 to make sure it works correctly with your code.\n\n## Upgradability\n\nMost contracts in DN404 are compatible with both upgradeable and non-upgradeable (i.e. regular) contracts.\n\nPlease call any required internal initialization methods accordingly.\n\n## Acknowledgments\n\nThis repository is inspired by various sources:\n\n- [ERC7647 (a.k.a. SJ741)](https://github.com/SJ741/sj741-token)\n- [ERC7651 (a.k.a. \"ERC\"404)](https://github.com/Pandora-Labs-Org/erc404)\n- [\"ERC\"425](https://github.com/paradox425/ERC425)\n- [Solady](https://github.com/vectorized/solady)\n- [ERC721A](https://github.com/chiru-labs/ERC721A)\n\n[npm-shield]: https://img.shields.io/npm/v/dn404.svg\n[npm-url]: https://www.npmjs.com/package/dn404\n\n[ci-shield]: https://img.shields.io/github/actions/workflow/status/vectorized/dn404/ci.yml?branch=main\u0026label=build\n[ci-url]: https://github.com/vectorized/dn404/actions/workflows/ci.yml\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvectorized%2Fdn404","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvectorized%2Fdn404","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvectorized%2Fdn404/lists"}