{"id":15411436,"url":"https://github.com/farcasterxyz/contracts","last_synced_at":"2025-05-15T16:03:04.144Z","repository":{"id":36997750,"uuid":"504322890","full_name":"farcasterxyz/contracts","owner":"farcasterxyz","description":"Implementation of the Farcaster contracts","archived":false,"fork":false,"pushed_at":"2025-05-15T13:52:03.000Z","size":1227,"stargazers_count":377,"open_issues_count":36,"forks_count":142,"subscribers_count":10,"default_branch":"main","last_synced_at":"2025-05-15T14:45:58.953Z","etag":null,"topics":["farcaster"],"latest_commit_sha":null,"homepage":"https://www.farcaster.xyz/","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/farcasterxyz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","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,"zenodo":null}},"created_at":"2022-06-16T22:25:40.000Z","updated_at":"2025-05-15T13:52:51.000Z","dependencies_parsed_at":"2023-02-15T10:46:58.034Z","dependency_job_id":"db0945e6-98c5-44bb-989c-c7ef23446d4e","html_url":"https://github.com/farcasterxyz/contracts","commit_stats":{"total_commits":290,"total_committers":20,"mean_commits":14.5,"dds":0.4,"last_synced_commit":"9e3016d64d1ae2cb522934b37a0dfe27687fe8e1"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/farcasterxyz%2Fcontracts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/farcasterxyz%2Fcontracts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/farcasterxyz%2Fcontracts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/farcasterxyz%2Fcontracts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/farcasterxyz","download_url":"https://codeload.github.com/farcasterxyz/contracts/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254374398,"owners_count":22060609,"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":["farcaster"],"created_at":"2024-10-01T16:49:06.365Z","updated_at":"2025-05-15T16:03:04.089Z","avatar_url":"https://github.com/farcasterxyz.png","language":"Solidity","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Contracts\n\nThis repository contains all the contracts deployed by the [Farcaster protocol](https://github.com/farcasterxyz/protocol). The contracts are:\n\n1. **[Id Registry](./src/IdRegistry.sol)** - tracks ownership of farcaster identities (fids).\n2. **[Storage Registry](./src/StorageRegistry.sol)** - allocates storage to fids and collects rent.\n3. **[Key Registry](./src/KeyRegistry.sol)** - tracks associations between fids and key pairs for signing messages.\n4. **[Id Gateway](./src/IdGateway.sol)** - issues farcaster identities (fids) to new users.\n5. **[Key Gateway](./src/KeyGateway.sol)** - adds new associations between fids and keys.\n6. **[Bundler](./src/Bundler.sol)** - allows calling gateways and storage in a single transaction.\n7. **[Signed Key Request Validator](./src/validators/SignedKeyRequestValidator.sol)** - validates key registry metadata.\n8. **[Recovery Proxy](./src/RecoveryProxy.sol)** - proxy for recovery service operators to initiate fid recovery.\n9. **[Fname Resolver](./src/FnameResolver.sol)** - validates Farcaster ENS names which were issued offchain.\n\nRead the [docs](docs/docs.md) for more details on how the contracts work.\n\n## Deployments\n\nThe [v3.1 contracts](https://github.com/farcasterxyz/contracts/releases/tag/v3.1.0) are deployed across both OP Mainnet and Ethereum Mainnet.\n\n### OP Mainnet\n\n| Contract                  | Address                                                                                                                          |\n| ------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |\n| IdRegistry                | [0x00000000fc6c5f01fc30151999387bb99a9f489b](https://optimistic.etherscan.io/address/0x00000000fc6c5f01fc30151999387bb99a9f489b) |\n| StorageRegistry           | [0x00000000fcce7f938e7ae6d3c335bd6a1a7c593d](https://optimistic.etherscan.io/address/0x00000000fcce7f938e7ae6d3c335bd6a1a7c593d) |\n| KeyRegistry               | [0x00000000fc1237824fb747abde0ff18990e59b7e](https://optimistic.etherscan.io/address/0x00000000fc1237824fb747abde0ff18990e59b7e) |\n| IdGateway                 | [0x00000000fc25870c6ed6b6c7e41fb078b7656f69](https://optimistic.etherscan.io/address/0x00000000fc25870c6ed6b6c7e41fb078b7656f69) |\n| KeyGateway                | [0x00000000fc56947c7e7183f8ca4b62398caadf0b](https://optimistic.etherscan.io/address/0x00000000fc56947c7e7183f8ca4b62398caadf0b) |\n| Bundler                   | [0x00000000fc04c910a0b5fea33b03e0447ad0b0aa](https://optimistic.etherscan.io/address/0x00000000fc04c910a0b5fea33b03e0447ad0b0aa) |\n| SignedKeyRequestValidator | [0x00000000fc700472606ed4fa22623acf62c60553](https://optimistic.etherscan.io/address/0x00000000fc700472606ed4fa22623acf62c60553) |\n| RecoveryProxy             | [0x00000000fcb080a4d6c39a9354da9eb9bc104cd7](https://optimistic.etherscan.io/address/0x00000000fcb080a4d6c39a9354da9eb9bc104cd7) |\n\n### ETH Mainnet\n\n| Contract      | Address          |\n| ------------- | ---------------- |\n| FnameResolver | Not yet deployed |\n\n## Audits\n\nThe [v3.1 contracts](https://github.com/farcasterxyz/contracts/releases/tag/v3.1.0) contracts were reviewed by [0xMacro](https://0xmacro.com/) and [Cyfrin](https://www.cyfrin.io/).\n\n- [0xMacro Report A-3](https://0xmacro.com/library/audits/farcaster-3.html)\n- [Cyfrin Report](https://github.com/farcasterxyz/contracts/blob/fe24a79e8901e8f2479474b16e32f43b66455a1d/docs/audits/2023-11-05-cyfrin-farcaster-v1.0.pdf)\n\nThe [v3.0 contracts](https://github.com/farcasterxyz/contracts/releases/tag/v3.0.0) contracts were reviewed by [0xMacro](https://0xmacro.com/):\n\n- [0xMacro Report A-1](https://0xmacro.com/library/audits/farcaster-1.html)\n- [0xMacro Report A-2](https://0xmacro.com/library/audits/farcaster-2.html)\n\n## Contributing\n\nPlease see the [contributing guidelines](CONTRIBUTING.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffarcasterxyz%2Fcontracts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffarcasterxyz%2Fcontracts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffarcasterxyz%2Fcontracts/lists"}