The versioned blueprint of your app: what it contains, how Iron Octopus uses it today, and the ways to create one.
A project’s architecture is the blueprint of your app: its parts, what each one is responsible for, how they connect, where data lives, and the decisions behind them. Iron Octopus keeps it as a versioned document. When it plans a feature, it plans against the current published version, so each change fits the app you already have instead of starting from scratch.
A readable description, in Markdown: the system’s purpose, its components and responsibilities, data, integrations, decisions, risks and constraints.
Structured model
The same architecture as structured data: components, the relationships between them, capabilities, decisions and risks. Iron Octopus reads this when planning.
Version details
Its number, a short changelog of what changed, and where it came from: written by hand, guided chat or a template.
When you describe an idea, Iron Octopus plans it against the project’s current published architecture. It places new work in the right components, respects existing boundaries and decisions, and records which architecture version each plan used.
Today the architecture shapes planning. Publishing a version doesn’t add gates, and code review doesn’t yet check each change against the architecture.
An architecture is always either a draft you’re working on, or a published version. Published versions are immutable: to change one, you create a new draft from it, edit it, and publish it as the next version. Only the published version is used for planning. See update and publish a version.
On Pioneer you can use the managed standards, customize a project’s own copy, and keep reusable personal and workspace templates.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Iron Octopus","description":"Documentation for Iron Octopus: proven software delivery practices, built in for AI.","colors":{"primary":"#2B7BA6","light":"#5A9EC6","dark":"#1F6690"},"logo":{"light":"https://mintcdn.com/iron-octopus/WNUxYFBRWUUKT4zd/logo/light.svg?fit=max\u0026auto=format\u0026n=WNUxYFBRWUUKT4zd\u0026q=85\u0026s=182dd3932ec0875c324a8339e04b559a","dark":"https://mintcdn.com/iron-octopus/WNUxYFBRWUUKT4zd/logo/dark.svg?fit=max\u0026auto=format\u0026n=WNUxYFBRWUUKT4zd\u0026q=85\u0026s=cb2cec4e6a727515333455ed3badf314","href":"https://www.ironoctopus.ai"},"favicon":"https://mintcdn.com/iron-octopus/WNUxYFBRWUUKT4zd/favicon.png?fit=max\u0026auto=format\u0026n=WNUxYFBRWUUKT4zd\u0026q=85\u0026s=af0fa688be21d449d37ae86d89bcb203","navbar":{"links":[{"href":"https://www.ironoctopus.ai/pricing","label":"Pricing"},{"href":"https://app.ironoctopus.ai","label":"Sign in"}],"primary":{"type":"button","label":"Start building","href":"https://app.ironoctopus.ai/start"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"iron-octopus","hasAudioNarration":false,"actualSubdomain":"iron-octopus","customDomains":["docs.ironoctopus.ai"],"gitSource":{"type":"github","owner":"ironoctopus-ai","repo":"io-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":"","_id":"6ae126942ed17d2f729ad274"},"chroma":{"latestBuiltDeploymentHistoryId":"6ae2c31f71d312d7bc3331a9","collectionId":"f2b16f93-5aab-4850-8ef7-347652960d50","liveDeploymentHistoryId":"6ae2c31f71d312d7bc3331a9","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae2cbbf652fa3d81bbb9134","clientVersion":"0.0.4006","searchFilterCounts":[{"language":"default","tag":"Documentation","count":40},{"language":"default","tag":"Building blocks","count":8},{"language":"default","tag":"Build features","count":6},{"language":"default","tag":"Account","count":4},{"language":"default","tag":"AI","count":4},{"language":"default","tag":"Architecture","count":4},{"language":"default","tag":"Get started","count":3},{"language":"default","tag":"Reference","count":2},{"language":"default","tag":"Code","count":2},{"language":"default","tag":"Fix problems","count":2}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","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":"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":"pause-universal-search-reconcile","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":"per-site-search-delta","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":"editor-private-page-search","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":"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":"byok-sep-25","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":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","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":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"architecture/overview","slug":"/architecture/overview","pageMetadata":{"title":"Your app's architecture","description":"The versioned blueprint of your app: what it contains, how Iron Octopus uses it today, and the ways to create one.","href":"/architecture/overview"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"The versioned blueprint of your app: what it contains, how Iron Octopus uses it today, and the ways to create one.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"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`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Heading,Note,Table}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`A project’s architecture is the blueprint of your app: its parts, what each one is responsible for, how they connect, where data lives, and the decisions behind them. Iron Octopus keeps it as a versioned document. When it plans a feature, it plans against the current published version, so each change fits the app you already have instead of starting from scratch.`}),`\n`,_jsx(Heading,{level:`2`,id:`what-it-contains`,children:`What it contains`}),`\n`,_jsx(_components.p,{children:`Each version has two forms of the same content:`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Part`}),_jsx(_components.th,{children:`What it is`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Architecture document`}),_jsx(_components.td,{children:`A readable description, in Markdown: the system’s purpose, its components and responsibilities, data, integrations, decisions, risks and constraints.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Structured model`}),_jsx(_components.td,{children:`The same architecture as structured data: components, the relationships between them, capabilities, decisions and risks. Iron Octopus reads this when planning.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Version details`}),_jsx(_components.td,{children:`Its number, a short changelog of what changed, and where it came from: written by hand, guided chat or a template.`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`how-iron-octopus-uses-it`,children:`How Iron Octopus uses it`}),`\n`,_jsxs(_components.p,{children:[`When you `,_jsx(_components.a,{href:`/build/start-with-an-idea`,children:`describe an idea`}),`, Iron Octopus plans it against the project’s current published architecture. It places new work in the right components, respects existing boundaries and decisions, and records which architecture version each plan used.`]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`Today the architecture shapes `,_jsx(_components.strong,{children:`planning`}),`. Publishing a version doesn’t add gates, and code review doesn’t yet check each change against the architecture.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`ways-to-create-one`,children:`Ways to create one`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Way`}),_jsx(_components.th,{children:`Best for`}),_jsx(_components.th,{children:`Read`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Managed standard`})}),_jsx(_components.td,{children:`A new app with a common shape. Apply one of the Iron Octopus Architecture Library standards.`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/architecture/templates`,children:`Templates`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Define manually`})}),_jsx(_components.td,{children:`You know the architecture and want to write it. Start from the structured outline.`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/architecture/update-and-publish`,children:`Update and publish`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Design through chat`})}),_jsx(_components.td,{children:`An existing app, or one you want to think through. A Planning worker acts as your architect, reads the project’s code, and proposes a draft.`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/architecture/learn-from-your-code`,children:`Learn from your code`})})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`drafts-and-published-versions`,children:`Drafts and published versions`}),`\n`,_jsxs(_components.p,{children:[`An architecture is always either a `,_jsx(_components.strong,{children:`draft`}),` you’re working on, or a `,_jsx(_components.strong,{children:`published`}),` version. Published versions are immutable: to change one, you create a new draft from it, edit it, and publish it as the next version. Only the published version is used for planning. See `,_jsx(_components.a,{href:`/architecture/update-and-publish`,children:`update and publish a version`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`where-you-see-it`,children:`Where you see it`}),`\n`,_jsxs(_components.p,{children:[`Open a project and choose `,_jsx(_components.strong,{children:`Architecture`}),`. The page has tabs for `,_jsx(_components.strong,{children:`Draft`}),`, `,_jsx(_components.strong,{children:`Guided chat`}),`, `,_jsx(_components.strong,{children:`Library`}),`, `,_jsx(_components.strong,{children:`Versions`}),` and `,_jsx(_components.strong,{children:`Published`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`on-your-plan`,children:`On your plan`}),`\n`,_jsx(_components.p,{children:`On Pioneer you can use the managed standards, customize a project’s own copy, and keep reusable personal and workspace templates.`})]})}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":"Your app's architecture","description":"The versioned blueprint of your app: what it contains, how Iron Octopus uses it today, and the ways to create one.","href":"/architecture/overview"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"What it contains","slug":"what-it-contains","depth":2,"children":[]},{"title":"How Iron Octopus uses it","slug":"how-iron-octopus-uses-it","depth":2,"children":[]},{"title":"Ways to create one","slug":"ways-to-create-one","depth":2,"children":[]},{"title":"Drafts and published versions","slug":"drafts-and-published-versions","depth":2,"children":[]},{"title":"Where you see it","slug":"where-you-see-it","depth":2,"children":[]},{"title":"On your plan","slug":"on-your-plan","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"iron-octopus","siteName":"Iron Octopus","title":"Your app's architecture - Iron Octopus","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-29T04:29:55.588Z","originalFileLocation":"architecture/overview.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=\"system\"}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=\"description\" content=\"The versioned blueprint of your app: what it contains, how Iron Octopus uses it today, and the ways to create one.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Iron Octopus\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/iron-octopus/osuDYMG2NjsMI9rP/_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/iron-octopus/osuDYMG2NjsMI9rP/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/iron-octopus/osuDYMG2NjsMI9rP/_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/iron-octopus/osuDYMG2NjsMI9rP/_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/iron-octopus/osuDYMG2NjsMI9rP/_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/iron-octopus/osuDYMG2NjsMI9rP/_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/iron-octopus/osuDYMG2NjsMI9rP/_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/iron-octopus/osuDYMG2NjsMI9rP/_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/iron-octopus/osuDYMG2NjsMI9rP/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Your app\u0026#x27;s architecture - Iron Octopus\">\u003cmeta data-mint-head property=\"og:description\" content=\"The versioned blueprint of your app: what it contains, how Iron Octopus uses it today, and the ways to create one.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Iron Octopus\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.ironoctopus.ai/architecture/overview\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://iron-octopus.mintlify.app/_mintlify/api/og/v2?division=Architecture\u0026amp;title=Your+app%27s+architecture\u0026amp;description=The+versioned+blueprint+of+your+app%3A+what+it+contains%2C+how+Iron+Octopus+uses+it+today%2C+and+the+ways+to+create+one.\u0026amp;theme=4a40c59845d93360b45703b8\u0026amp;signature=46bca72a0ecd13e1fdbdbf39cd2ac358eecee71663aa6175046291b67c747189\">\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=\"Your app\u0026#x27;s architecture - Iron Octopus\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"The versioned blueprint of your app: what it contains, how Iron Octopus uses it today, and the ways to create one.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://iron-octopus.mintlify.app/_mintlify/api/og/v2?division=Architecture\u0026amp;title=Your+app%27s+architecture\u0026amp;description=The+versioned+blueprint+of+your+app%3A+what+it+contains%2C+how+Iron+Octopus+uses+it+today%2C+and+the+ways+to+create+one.\u0026amp;theme=4a40c59845d93360b45703b8\u0026amp;signature=46bca72a0ecd13e1fdbdbf39cd2ac358eecee71663aa6175046291b67c747189\">\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/iron-octopus/osuDYMG2NjsMI9rP/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Iron Octopus\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2B7BA6\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.ironoctopus.ai/architecture/overview\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/architecture/overview.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.ironoctopus.ai/#organization\",\"name\":\"Iron Octopus\",\"url\":\"https://docs.ironoctopus.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/iron-octopus/WNUxYFBRWUUKT4zd/logo/light.svg?fit=max\u0026auto=format\u0026n=WNUxYFBRWUUKT4zd\u0026q=85\u0026s=182dd3932ec0875c324a8339e04b559a\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.ironoctopus.ai#website\",\"name\":\"Iron Octopus\",\"url\":\"https://docs.ironoctopus.ai\",\"publisher\":{\"@id\":\"https://docs.ironoctopus.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.ironoctopus.ai/architecture/overview#webpage\",\"url\":\"https://docs.ironoctopus.ai/architecture/overview\",\"name\":\"Your app's architecture\",\"description\":\"The versioned blueprint of your app: what it contains, how Iron Octopus uses it today, and the ways to create one.\",\"dateModified\":\"2026-10-29T04:29:55.588Z\",\"isPartOf\":{\"@id\":\"https://docs.ironoctopus.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.ironoctopus.ai/architecture/overview#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.ironoctopus.ai/architecture/overview#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Iron Octopus\",\"item\":\"https://docs.ironoctopus.ai\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Your app's architecture\",\"item\":\"https://docs.ironoctopus.ai/architecture/overview\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.ironoctopus.ai/architecture/overview#article\",\"headline\":\"Your app's architecture\",\"name\":\"Your app's architecture\",\"description\":\"The versioned blueprint of your app: what it contains, how Iron Octopus uses it today, and the ways to create one.\",\"url\":\"https://docs.ironoctopus.ai/architecture/overview\",\"mainEntityOfPage\":{\"@id\":\"https://docs.ironoctopus.ai/architecture/overview#webpage\"},\"dateModified\":\"2026-10-29T04:29:55.588Z\",\"publisher\":{\"@id\":\"https://docs.ironoctopus.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.ironoctopus.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Iron Octopus\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Iron Octopus","nav":{"global":null,"tabs":[{"tab":"Documentation","groups":[{"group":"Get started","pages":[{"title":"Welcome to Iron Octopus","href":""},{"title":"Quickstart","href":"/quickstart"},{"title":"How Iron Octopus works","href":"/how-it-works"}]},{"group":"Building blocks","pages":[{"title":"Building blocks","href":"/building-blocks/overview"},{"title":"Workspaces","href":"/building-blocks/workspaces"},{"title":"Projects","href":"/building-blocks/projects"},{"title":"Initiatives","href":"/building-blocks/initiatives"},{"title":"Features","href":"/building-blocks/features"},{"title":"Requirements","href":"/building-blocks/requirements"},{"title":"Work items","href":"/building-blocks/work-items"},{"title":"Defect reports","href":"/building-blocks/defect-reports"}]},{"group":"Build features","pages":[{"title":"Start with an idea","href":"/build/start-with-an-idea"},{"title":"Plans and approval","href":"/build/plans-and-approval"},{"title":"Work in progress","href":"/build/work-in-progress"},{"title":"Review and rework","href":"/build/review-and-rework"},{"title":"Release a feature","href":"/build/release-a-feature"},{"title":"Feature history and export","href":"/build/feature-history"}]},{"group":"Home","pages":[{"title":"Home and Needs you","href":"/home/needs-you"},{"title":"Ask","href":"/home/ask"}]},{"group":"Fix problems","pages":[{"title":"Report a defect","href":"/fix/report-a-defect"},{"title":"When work fails or gets stuck","href":"/fix/when-work-fails"}]},{"group":"Rules","pages":[{"title":"Built-in rules","href":"/rules/built-in-rules"},{"title":"Change a rule","description":"How to change a built-in rule for your workspace or one project: where rules live, how inheritance works, and how to publish, test and roll back a change.","href":"/rules/change-a-rule"}]},{"group":"Architecture","pages":[{"title":"Your app's architecture","href":"/architecture/overview"},{"title":"Templates","description":"The three standard architectures in the Iron Octopus Architecture Library, what each one suits and costs, and how to apply or customize one.","href":"/architecture/templates"},{"title":"Learn from your code","href":"/architecture/learn-from-your-code"},{"title":"Update and publish a version","href":"/architecture/update-and-publish"}]},{"group":"Code","pages":[{"title":"Where your code lives","href":"/code/where-your-code-lives"},{"title":"Connect GitHub","href":"/code/connect-github"}]},{"group":"AI","pages":[{"title":"Included AI","href":"/ai/included-ai"},{"title":"Use your own AI provider","href":"/ai/your-own-provider"},{"title":"AI workers and teams","href":"/ai/workers-and-teams"},{"title":"Usage","href":"/ai/usage"}]},{"group":"Account","pages":[{"title":"Account settings","href":"/account/account-settings"},{"title":"Members","href":"/account/members"},{"title":"Plans and billing","href":"/account/plans-and-billing"},{"title":"Get support","href":"/account/support"}]},{"group":"Security","pages":[{"title":"Security and privacy","href":"/security/overview"}]},{"group":"Reference","pages":[{"title":"Glossary","href":"/reference/glossary"},{"title":"Changelog","href":"/changelog"}]}]}]},"title":"Your app's architecture - Iron Octopus","buildId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","deploymentId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","dynamics":[],"chunks":[]}