Skip to main content

Concepts & Architecture

This section explains why Canopy works the way it does. It's for readers who want to understand the design principles behind the platform — not just how to use it, but the reasoning that shaped it. Use this section when you're troubleshooting something unexpected, planning a complex deployment, or evaluating whether Canopy fits your organisation's needs.

In this section

PageWhat it covers
Understanding the Data-Driven MetamodelWhy card types, fields, relations, and roles are stored as database records rather than code — and what that means for customisation, migrations, and multi-tenancy
System ArchitectureThe four-component stack (React SPA, FastAPI backend, PostgreSQL, edge Nginx), optional modules (Ollama AI, MCP server), and how data flows between them
Permissions & RolesThe three-layer permission model (app roles → stakeholder roles → effective permissions per card), when to use each layer, and how the admin wildcard works

What this section is not

This section explains concepts and design decisions — it does not walk you through tasks. If you want to do something, use: