Design
Architecture tiers
The four architectures Brunel designs for every repository, Starter, Growth, Scale and Enterprise, the eight domains each one covers, and the validation rules every design must pass.
Four tiers, one design
Brunel always designs four complete architectures, from the smallest production-ready setup to a multi-zone platform. Components keep the same id across tiers, so you can follow the database or the API from one tier to the next.
| Tier | Reference budget | Typical shape |
|---|---|---|
| Starter | €50 / month | One environment, small managed services or a single server, daily backups |
| Growth | €500 / month | Staging and production, managed database, cache, CDN, WAF, autoscaling |
| Scale | €5,000 / month | Multi-zone, replicas, tracing, disaster recovery, stricter isolation |
| Enterprise | €20,000 / month | High availability everywhere, dedicated security and compliance controls |
The reference budget guides the design; your own monthly budget from the context decides which tier Brunel recommends and highlights. The budget slider moves between tiers and morphs the diagram accordingly.
Eight domains, always covered
Every tier covers all eight domains. A domain can be minimal in Starter, never absent.
| Domain | Components |
|---|---|
| Compute | virtual machines, container services, Kubernetes, functions, workers, scheduled jobs |
| Data | relational and document databases, cache, object storage, search, queue, stream |
| Network | private network, load balancer, CDN, DNS, NAT, API gateway |
| Security | WAF, secrets manager, key management, identity and access, TLS certificates |
| Observability | logs, metrics, tracing, alerting, uptime checks |
| CI/CD | pipeline, container registry |
| Resilience | backups, disaster recovery |
| Environments | development, staging, production |
Every component explains itself
Click a component in the diagram to open its inspector:
- Why it is there, with the facts and context values that justify it.
- Configuration: size, replicas, autoscaling, high availability, multi-zone, engine and version, storage, retention, placement (public, private, edge, global).
- Cost: every line as quantity × unit price, with the catalog date.
- Alternatives that were considered and why they were not chosen, and the trade-off accepted.
- A one-click follow-up question in the chat.
The verdict
Before the tiers, Brunel states a verdict about your current setup, when it found one:
| Verdict | Meaning |
|---|---|
redesign | What runs today does not fit the needs; the tiers propose a new target |
evolve | The current setup is a good base; the tiers extend it |
keep-current | What you have fits; the tiers show what changes if you grow |
Validation rules
Every tier is checked by deterministic rules before you see it. A critical violation sends the design back for one repair pass; a design that still violates a critical rule says so.
| Rule | Severity | Requirement |
|---|---|---|
SEC-001 | critical | Databases, caches and queues are private |
SEC-002 | critical | A secrets manager exists; no secret-looking variable is left unmanaged |
SEC-003 | critical | Public entry points use TLS |
SEC-004 | warning | A WAF protects Growth and above |
RES-001 | critical | Every stateful component has backups (at least 7 days) |
RES-002 | warning | 99.9 % availability or more: no single-replica stateless compute |
RES-003 | critical | 99.95 %: the database and compute span several zones |
RES-004 | warning | Disaster recovery for Scale and above |
OBS-001 | critical | Logs, metrics and alerting in every tier |
OBS-002 | warning | Tracing for Scale and above |
CICD-001 | critical | A pipeline, and a registry when container images run |
BUD-001 | critical | The tier stays within its budget (+10 %) |
CMP-001 | critical | EU data residency keeps every region in the EU |
GRA-001 | critical | Every service is hosted by exactly one compute component |
GRA-002 | critical | No dangling connection; every component is reachable |
EXP-001 | warning | Every component cites existing facts or context values |
PRC-000 | info | A component without an official price says so |
Recovery objectives
Each tier states its recovery point objective (how much data you could lose) and recovery time objective (how long a recovery takes), derived from its backups, replicas and disaster recovery components.