Towns smart contracts are deployed using the Diamond Pattern (see EIP-2535), which improves upon modularity and upgradeability.The following is the current list of deployed diamond contracts on Base and a link to their associated facet addresses.
These addresses provide direct access to the deployed contracts on Base. Developers and users of the Towns ecosystem can interact with these contracts for various purposes, including creating new Spaces, managing memberships, and implementing pricing strategies.
Was this page helpful?
⌘I
{"docsConfig":{"theme":"maple","$schema":"https://mintlify.com/docs.json","name":"Towns","colors":{"primary":"#8c84f7","light":"#8c84f7","dark":"#8c84f7"},"logo":{"light":"https://mintcdn.com/hntlabs/KlENK6fTUsnI7D9v/images/logo.svg?fit=max\u0026auto=format\u0026n=KlENK6fTUsnI7D9v\u0026q=85\u0026s=84eb606f4248565f3e7219f010662637","dark":"https://mintcdn.com/hntlabs/KlENK6fTUsnI7D9v/images/logo-dark.svg?fit=max\u0026auto=format\u0026n=KlENK6fTUsnI7D9v\u0026q=85\u0026s=8a7243329076b39a930e951ee3d00e07"},"favicon":"/favicon.png","appearance":{"default":"dark"},"navbar":{"links":[]},"footer":{"socials":{"x":"https://x.com/TownsProtocol","github":"https://github.com/towns-protocol","website":"https://towns.com"}},"contextual":{"options":["copy","chatgpt"]},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"hntlabs","hasAudioNarration":false,"actualSubdomain":"hntlabs","customDomains":["docs.towns.com"],"gitSource":{"type":"github","owner":"towns-protocol","repo":"towns","deployBranch":"main","contentDirectory":"packages/docs","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true,"edits":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ae91e42b9dca87217176919:success","clientVersion":"0.0.4111","searchFilterCounts":[{"language":"default","tag":"Build","count":56},{"language":"default","tag":"React SDK","count":39},{"language":"default","tag":"API","count":37},{"language":"default","tag":"Learn","count":34},{"language":"default","tag":"Towns Messaging Protocol","count":17},{"language":"default","tag":"Bots","count":11},{"language":"default","tag":"Node Operator","count":10},{"language":"default","tag":"Concepts","count":9},{"language":"default","tag":"Tutorials","count":7},{"language":"default","tag":"Towns Smart Contracts","count":7}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"styles.css","content":".prose :where(a):not(:where([class~=\"not-prose\"] *)){border-bottom:1px solid var(--green-main)!important}#sidebar>ul[class*=\"bottom-0\"]{display:none!important}"}],"page":{"pagePath":"towns-smart-contracts/contracts","slug":"/towns-smart-contracts/contracts","pageMetadata":{"title":"Smart Contracts","description":null,"href":"/towns-smart-contracts/contracts"},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,p:`p`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Heading,Table}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`key-smart-contracts`,children:`Key Smart Contracts`}),`\n`,_jsxs(_components.p,{children:[`Towns smart contracts are deployed using the Diamond Pattern (see `,_jsx(_components.a,{href:`https://eips.ethereum.org/EIPS/eip-2535`,children:`EIP-2535`}),`), which improves upon modularity and upgradeability.`]}),`\n`,_jsx(_components.p,{children:`The following is the current list of deployed diamond contracts on Base and a link to their associated facet addresses.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Diamond`}),_jsx(_components.th,{children:`Network`}),_jsx(_components.th,{children:`Address`}),_jsx(_components.th,{children:`Facet Addresses`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`SpaceFactory`}),_jsx(_components.td,{children:`Base`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0x9978c826d93883701522d2CA645d5436e5654252`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://louper.dev/diamond/0x9978c826d93883701522d2CA645d5436e5654252?network=base`,children:`Louper Link`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`SpaceOwner`}),_jsx(_components.td,{children:`Base`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0x2824D1235d1CbcA6d61C00C3ceeCB9155cd33a42`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://louper.dev/diamond/0x2824D1235d1CbcA6d61C00C3ceeCB9155cd33a42?network=base`,children:`Louper Link`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Space`}),_jsx(_components.td,{children:`Base`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0x34f35E1ECA9C00791bF8121A01c20977d8bEB11C`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://louper.dev/diamond/0x34f35E1ECA9C00791bF8121A01c20977d8bEB11C?network=base`,children:`Louper Link`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`BaseRegistry`}),_jsx(_components.td,{children:`Base`}),_jsx(_components.td,{\"data-numeric\":`true`,children:`0x7c0422b31401C936172C897802CF0373B35B7698`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://louper.dev/diamond/0x7c0422b31401C936172C897802CF0373B35B7698?network=base`,children:`Louper Link`})})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`accessing-and-interacting-with-the-contracts`,children:`Accessing and Interacting with the Contracts`}),`\n`,_jsx(_components.p,{children:`These addresses provide direct access to the deployed contracts on Base. Developers and users of the Towns ecosystem can interact with these contracts for various purposes, including creating new Spaces, managing memberships, and implementing pricing strategies.`})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Smart Contracts","description":null,"href":"/towns-smart-contracts/contracts"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Key Smart Contracts","slug":"key-smart-contracts","depth":2,"children":[]},{"title":"Accessing and Interacting with the Contracts","slug":"accessing-and-interacting-with-the-contracts","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"hntlabs","siteName":"Towns","title":"Smart Contracts - Towns","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2025-10-17T22:29:02.229Z","originalFileLocation":"towns-smart-contracts/contracts.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"application-name\" content=\"Towns\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/hntlabs/ya0Cm2O-Yc_u8bQS/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/hntlabs/ya0Cm2O-Yc_u8bQS/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/hntlabs/ya0Cm2O-Yc_u8bQS/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/hntlabs/ya0Cm2O-Yc_u8bQS/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/hntlabs/ya0Cm2O-Yc_u8bQS/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/hntlabs/ya0Cm2O-Yc_u8bQS/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/hntlabs/ya0Cm2O-Yc_u8bQS/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/hntlabs/ya0Cm2O-Yc_u8bQS/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/hntlabs/ya0Cm2O-Yc_u8bQS/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Smart Contracts - Towns\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Towns\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.towns.com/towns-smart-contracts/contracts\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://hntlabs.mintlify.site/_mintlify/api/og/v2?division=Towns+Smart+Contracts\u0026amp;title=Smart+Contracts\u0026amp;theme=05227ad224b6a784c54be0f9\u0026amp;signature=30639008c4d3233568a2940fbba538c7d810628372a74e0c77f40f803f75e22d\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Smart Contracts - Towns\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://hntlabs.mintlify.site/_mintlify/api/og/v2?division=Towns+Smart+Contracts\u0026amp;title=Smart+Contracts\u0026amp;theme=05227ad224b6a784c54be0f9\u0026amp;signature=30639008c4d3233568a2940fbba538c7d810628372a74e0c77f40f803f75e22d\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/hntlabs/ya0Cm2O-Yc_u8bQS/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Towns\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#8c84f7\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.towns.com/towns-smart-contracts/contracts\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/towns-smart-contracts/contracts.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.towns.com/#organization\",\"name\":\"Towns\",\"url\":\"https://docs.towns.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/hntlabs/KlENK6fTUsnI7D9v/images/logo.svg?fit=max\u0026auto=format\u0026n=KlENK6fTUsnI7D9v\u0026q=85\u0026s=84eb606f4248565f3e7219f010662637\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.towns.com#website\",\"name\":\"Towns\",\"url\":\"https://docs.towns.com\",\"publisher\":{\"@id\":\"https://docs.towns.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.towns.com/towns-smart-contracts/contracts#webpage\",\"url\":\"https://docs.towns.com/towns-smart-contracts/contracts\",\"name\":\"Smart Contracts\",\"dateModified\":\"2025-10-17T22:29:02.229Z\",\"isPartOf\":{\"@id\":\"https://docs.towns.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.towns.com/towns-smart-contracts/contracts#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.towns.com/towns-smart-contracts/contracts#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Learn\",\"item\":\"https://docs.towns.com/introduction\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Towns Smart Contracts\",\"item\":\"https://docs.towns.com/towns-smart-contracts/overview\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Smart Contracts\",\"item\":\"https://docs.towns.com/towns-smart-contracts/contracts\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.towns.com/towns-smart-contracts/contracts#article\",\"headline\":\"Smart Contracts\",\"name\":\"Smart Contracts\",\"url\":\"https://docs.towns.com/towns-smart-contracts/contracts\",\"mainEntityOfPage\":{\"@id\":\"https://docs.towns.com/towns-smart-contracts/contracts#webpage\"},\"dateModified\":\"2025-10-17T22:29:02.229Z\",\"publisher\":{\"@id\":\"https://docs.towns.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.towns.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Towns\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Towns\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/towns-smart-contracts/contracts.md","siteName":"Towns","nav":{"global":null,"groups":[{"group":"Learn","icon":"book","pages":[{"title":"Introduction","href":"/introduction"},{"group":"Towns Smart Contracts","pages":[{"title":"Overview","href":"/towns-smart-contracts/overview"},{"title":"Space Ownership","href":"/towns-smart-contracts/space-ownership"},{"title":"Space Membership","href":"/towns-smart-contracts/space-membership"},{"title":"Pricing Modules","href":"/towns-smart-contracts/pricing-modules"},{"title":"Roles and Entitlements","href":"/towns-smart-contracts/roles-entitlements"},{"title":"Upgradeability","description":"The Diamond Pattern with Facets","href":"/towns-smart-contracts/upgradeability"},{"title":"Smart Contracts","href":"/towns-smart-contracts/contracts"}]},{"group":"Towns Messaging Protocol","pages":[{"title":"Overview","description":null,"href":"/towns-messaging-protocol/overview"},{"title":"Node Operators","href":"/towns-messaging-protocol/node-operators"},{"group":"Towns Chain","pages":[{"title":"Overview","href":"/towns-messaging-protocol/towns-chain/overview"},{"title":"Node Registry","href":"/towns-messaging-protocol/towns-chain/node-registry"},{"title":"Stream Registry","href":"/towns-messaging-protocol/towns-chain/stream-registry"}]},{"group":"Stream Nodes","pages":[{"title":"Overview","href":"/towns-messaging-protocol/stream-nodes/overview"},{"title":"Stream Allocation","href":"/towns-messaging-protocol/stream-nodes/stream-allocation"},{"title":"Event Lifecycle","href":"/towns-messaging-protocol/stream-nodes/event-lifecycle"}]},{"group":"Concepts","pages":[{"title":"Mini Blocks","href":"/concepts/mini-blocks"},{"title":"Stream Checkpointing","href":"/concepts/stream-checkpointing"},{"title":"Encryption","href":"/concepts/encryption"},{"title":"Rebalancing","href":"/concepts/rebalancing"},{"title":"Chunk Management","href":"/concepts/chunk-management"},{"title":"Snapshotting","href":"/concepts/snapshotting"},{"title":"Cross Chain Entitlements","href":"/concepts/cross-chain-entitlement-checking"},{"title":"Node to Node communication","href":"/concepts/node-node-communication"},{"title":"Network Partitioning","href":"/concepts/network-partitioning"}]}]},{"group":"Token Governance","pages":[{"title":"Overview","href":"/token-governance/overview"},{"title":"Governance Framework","href":"/token-governance/governance-framework"},{"title":"Towns Token","href":"/token-governance/towns-token"}]},{"group":"TOWNS Token","pages":[{"title":"Utility","href":"/towns-token/utility"},{"title":"Economics","href":"/towns-token/economics"},{"title":"Mechanics","href":"/towns-token/mechanics"},{"title":"Staking","href":"/towns-token/staking"},{"title":"Claiming Rewards","href":"/towns-token/claiming"}]},{"group":"Grants","pages":[{"title":"Towns Protocol Grants Program","href":"/grants/grants-program"}]}]},{"group":"Build","icon":"wrench","pages":[{"title":"Messaging Data Structures","href":"/build/towns-messaging-datastructures"},{"title":"Delegate Key Signing","href":"/build/delegate-key-signing"},{"title":"Towns Encryption Protocol","href":"/build/towns-encryption"},{"group":"React SDK","pages":[{"title":"Getting Started","href":"/build/react-sdk/getting-started"},{"title":"Changelog","url":"https://github.com/towns-protocol/towns/blob/main/packages/react-sdk/CHANGELOG.md","href":"/build/react-sdk/changelog"},{"group":"API","pages":[{"title":"connectTowns","href":"/build/react-sdk/api/connectTowns"},{"title":"connectTownsWithBearerToken","href":"/build/react-sdk/api/connectTownsWithBearerToken"},{"title":"getRoom","href":"/build/react-sdk/api/getRoom"},{"title":"signAndConnect","href":"/build/react-sdk/api/signAndConnect"},{"title":"TownsSyncProvider","href":"/build/react-sdk/api/TownsSyncProvider"},{"title":"useAdminRedact","href":"/build/react-sdk/api/useAdminRedact"},{"title":"useAgentConnection","href":"/build/react-sdk/api/useAgentConnection"},{"title":"useChannel","href":"/build/react-sdk/api/useChannel"},{"title":"useCreateChannel","href":"/build/react-sdk/api/useCreateChannel"},{"title":"useCreateDm","href":"/build/react-sdk/api/useCreateDm"},{"title":"useCreateGdm","href":"/build/react-sdk/api/useCreateGdm"},{"title":"useCreateSpace","href":"/build/react-sdk/api/useCreateSpace"},{"title":"useDm","href":"/build/react-sdk/api/useDm"},{"title":"useGdm","href":"/build/react-sdk/api/useGdm"},{"title":"useJoinSpace","href":"/build/react-sdk/api/useJoinSpace"},{"title":"useMember","href":"/build/react-sdk/api/useMember"},{"title":"useMemberList","href":"/build/react-sdk/api/useMemberList"},{"title":"useMyMember","href":"/build/react-sdk/api/useMyMember"},{"title":"useObservable","href":"/build/react-sdk/api/useObservable"},{"title":"useReactions","href":"/build/react-sdk/api/useReactions"},{"title":"useRedact","href":"/build/react-sdk/api/useRedact"},{"title":"useScrollback","href":"/build/react-sdk/api/useScrollback"},{"title":"useSendMessage","href":"/build/react-sdk/api/useSendMessage"},{"title":"useSendReaction","href":"/build/react-sdk/api/useSendReaction"},{"title":"useSetDisplayName","href":"/build/react-sdk/api/useSetDisplayName"},{"title":"useSetEnsAddress","href":"/build/react-sdk/api/useSetEnsAddress"},{"title":"useSetNft","href":"/build/react-sdk/api/useSetNft"},{"title":"useSetUsername","href":"/build/react-sdk/api/useSetUsername"},{"title":"useSpace","href":"/build/react-sdk/api/useSpace"},{"title":"useSyncAgent","href":"/build/react-sdk/api/useSyncAgent"},{"title":"useThreads","href":"/build/react-sdk/api/useThreads"},{"title":"useTimeline","href":"/build/react-sdk/api/useTimeline"},{"title":"useTowns","href":"/build/react-sdk/api/useTowns"},{"title":"useTownsAuthStatus","href":"/build/react-sdk/api/useTownsAuthStatus"},{"title":"useUserDms","href":"/build/react-sdk/api/useUserDms"},{"title":"useUserGdms","href":"/build/react-sdk/api/useUserGdms"},{"title":"useUserSpaces","href":"/build/react-sdk/api/useUserSpaces"}]}]},{"group":"Bots","pages":[{"title":"Introduction","href":"/build/bots/introduction"},{"title":"Getting Started","href":"/build/bots/getting-started"},{"title":"Changelog","url":"https://github.com/towns-protocol/towns/blob/main/packages/bot/CHANGELOG.md","href":"/build/bots/changelog"},{"title":"Local Development","href":"/build/bots/local-development"},{"title":"Events","href":"/build/bots/events"},{"title":"Slash Commands","href":"/build/bots/slash-commands"},{"title":"Interactions","href":"/build/bots/interactions"},{"title":"Onchain Integrations","href":"/build/bots/onchain-integrations"},{"title":"External Integrations","href":"/build/bots/external-interactions"},{"title":"Roles","href":"/build/bots/roles"},{"title":"Troubleshooting","href":"/build/bots/troubleshooting"}]},{"group":"Mini Apps","pages":[{"title":"Introduction","href":"/build/miniapps/introduction"},{"title":"Getting Started","href":"/build/miniapps/getting-started"},{"title":"SDK","href":"/build/miniapps/sdk"}]}]},{"group":"Node Operator","icon":"rocket","pages":[{"title":"Introduction","href":"/node-operator/introduction"},{"group":"Tutorials","pages":[{"title":"System Requirements \u0026 Installation","href":"/node-operator/tutorials/system-requirements-installation"},{"title":"System Configuration","href":"/node-operator/tutorials/system-configuration-steps"},{"title":"Best Practices","href":"/node-operator/tutorials/node-best-practices"},{"title":"Register Operator","href":"/node-operator/tutorials/register-towns-operator"},{"title":"Register Node","href":"/node-operator/tutorials/register-towns-stream-node"},{"title":"Upgrade Node","href":"/node-operator/tutorials/upgrade-towns-stream-node"},{"title":"Node Observability","href":"/node-operator/tutorials/node-observability"}]},{"group":"Resources","pages":[{"title":"Contracts","href":"/node-operator/contracts"},{"title":"Release Process","href":"/node-operator/release-process"}]}]},{"group":"White Paper","icon":"scroll","pages":[{"title":"Towns Technical Overview","href":"/white-paper/towns-technical-overview"},{"title":"Towns Protocol Technical Whitepaper","href":"/white-paper/technical-whitepaper"},{"title":"MiCA Whitepaper","href":"/white-paper/mica-whitepaper"}]}]},"basePath":"","title":"Smart Contracts - Towns","buildId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","deploymentId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","dynamics":[],"chunks":[]}