{"schemaVersion":"1","contentVersion":"2026-10-18.1","slug":"architecture","title":"How Rumata fits together","summary":"Understand how the parts of your application work together.","category":"Go deeper","minutes":9,"prerequisites":["Familiarity with a Rumata project and factory."],"sections":[{"id":"product-model","title":"One product, connected parts","blocks":[{"type":"paragraph","text":"The frontend is the interface people use. [Workflows](/guides/controls-workflows#list) coordinate actions, and activities perform reusable backend work. Databases store structured information, and [project storage](/guides/system-explorer-storage) holds files. Permissions control which people and workflows can act on those resources."},{"type":"table","headers":["Part","Plain-language purpose"],"rows":[["Project","Owns resources and collaboration state."],["Factory","The workbench for building and iterating."],["Frontend","The screens your users open."],["Workflow","The sequence that turns an event into an outcome."],["Activity","A reusable backend operation called by a workflow."],["Database","Structured application records."],["Project storage","Persistent file content."],["Secret","A protected value used by an authorized integration."],["Billing account","The owner of allowances and commercial usage."]]}]},{"id":"request-journey","title":"Follow one user action","blocks":[{"type":"steps","items":["A user opens the published frontend and submits a request.","The frontend calls the intended backend workflow endpoint.","Rumata checks the route, access, and whether the work can be admitted.","The workflow validates data, invokes activities or queries, and produces a result.","The frontend displays the result. Use run history and operational views to investigate what happened."]},{"type":"paragraph","text":"This example shows how the parts connect. Your application may use different tables, workflows, and steps."}]},{"id":"separate-lifecycles","title":"Separate lifecycles matter","blocks":[{"type":"paragraph","text":"Each resource runs independently. A [development machine](/guides/development#machine) can suspend while the published frontend stays available. A frontend can load even if a workflow fails, and a workspace can open while its database is starting. When investigating an issue, check the affected resource."}]}],"technical":[],"related":["workspace","development","system-explorer-workflows","billing"],"sources":["CONTEXT.md","AGENTS.md","docs/adr/0006-cloudflare-workers-for-frontend-sites.md"],"updated":"2026-09-06","audience":"general","media":[],"video":null,"url":"https://docs.rumata.dev/guides/architecture"}