Hosting & environments
How we provision, separate and operate environments.
How U Framework provisions and separates the environments its systems run in.
Choosing where a system runs
We size infrastructure to the workload. The decision usually falls into one of three shapes:
| Shape | Suits | Typical components |
|---|---|---|
| Managed platform | Web applications with variable traffic | Managed hosting, managed Postgres, CDN |
| VPS | Steady workloads, long-running processes, full control | Containers, reverse proxy, managed backups |
| Hybrid | Systems with both | Managed edge and web tier, VPS for workers and data jobs |
The choice and its reasons are written down as a decision record, together with the signals that would justify changing it.
Environments
- At minimum: production and staging, with identical configuration apart from secrets and scale.
- Preview environments for pull requests where the platform supports it.
- Production data never flows into lower environments without anonymization.
Infrastructure as code
Environments are described in version-controlled configuration so they can be recreated, reviewed and audited. Manual changes in production are treated as incidents to be codified.
Delivery
- Static assets and cacheable responses are served through a CDN with long-lived, content-hashed caching.
- TLS everywhere, with automated certificate renewal.