CAA Saskatchewan • Website Infrastructure Modernization

Container-first local foundation for the AWS-native platform.

The starter stack now runs in discrete services that mirror the target production shape: Next.js on the edge-facing tier, Django as the application API, and PostgreSQL as the system of record.

API status: ok
Database: up
Last check: Aug 6, 2026, 4:03 a.m.
Runtime briefContainerized

frontend → next dev --hostname 0.0.0.0

backend → uv run manage.py runserver

db → postgres:16-bookworm

network → shared compose bridge

Internal traffic stays simple: the frontend resolves the backend by service name, and the backend resolves PostgreSQL the same way.

Frontend

Next.js 16

Containerized app router UI served on port 3000.

Backend

Django 6 API

Health endpoint and API surface served on port 8000.

Database

PostgreSQL 16

Stateful local service that mirrors the target platform shape.

Current proof points

  • Every local runtime service is intended to start inside Docker.
  • The frontend already knows the backend through an internal container URL.
  • The backend reports both API and database readiness through a single health endpoint.

Next implementation slice

Phase 2

Local parity via Compose, health checks, and starter routes.

Phase 3

Terraform modules that mirror the same network, data, and compute split.

Phase 4

Build, publish, and deploy the same containers through GitHub Actions.