Infrastructure / DevOpsArchitecture record

Configuration-Driven Developer Platform

The problem it solves is unglamorous and expensive: a product made of several services, four datastores, a queue and a reverse proxy takes a new developer most of a day to stand up, and the environments drift apart afterwards. This platform declares the entire stack in a single configuration file and materialises it from container definitions, with a service catalogue holding the application repositories. Infrastructure provisioning is defined as code alongside it, so local and hosted environments come from the same description.

10+
Managed services
in the base stack
1 file
Config surface
drives the environment
Terraform
Provisioning
with a locked provider set
Multi-repo
Service catalogue
applications mounted in
Repository shape

Platform repository with container definitions, a service catalogue, Terraform modules and Make-based entrypoints

How this is presented

Documented as an architecture record. Internal tooling proves itself by what it removes, which is best explained rather than demonstrated.

From one config file to a running stack

Follow what happens on a first run, and note that application code enters from the side rather than being baked in.

Config fileData store

The single declarative description of the environment: services, ports, dependencies.

Client surfaceData storeServiceWorker / job
Standing up an environment

The onboarding path this exists to shorten.

Highlights

One configuration file describes the whole environment — services, datastores, ports and dependencies.
New developer onboarding collapses from a day of manual setup to a clone and a single command.
Application repositories live in a service catalogue and are mounted into the platform, so the platform and the products version independently.
Provisioning is defined as code with locked provider versions, so environments are reproducible rather than hand-tended.
Cloud service emulation locally, so developers can exercise integrations without cloud credentials.
Reverse proxy, process supervision and scheduled jobs are part of the base stack rather than per-project reinventions.

Declare once, materialise anywhere

The platform reads a declarative configuration and composes container definitions into a running environment. Application code is not part of the platform — it is catalogued and mounted, which keeps the two from entangling.

Configuration

The single declarative description of which services run and how they connect.

  • An example configuration ships alongside the real one for onboarding.
  • Changing the stack is a diff, not a wiki page.

Container definitions

Compose definitions and images for every platform service.

  • Datastores, queue, proxy, supervisor and scheduler all defined here.
  • Data volumes are managed so state survives a rebuild.

Service catalogue

Holds the application repositories the platform runs.

  • Applications are mounted in rather than vendored.
  • Platform and products can be versioned independently.

Provisioning

Infrastructure as code for hosted environments.

  • Terraform modules with a locked provider set.
  • Same description drives local and hosted setups.

Every managed service

This is the base stack one configuration file brings up. Application repositories are mounted in from the catalogue rather than vendored into the platform. 16 units across 4 groups.

Datastores

4
postgresmongoredislocalstack

Platform services

6
nginxrabbitmqsupervisorcrontabnodepgadmin

Provisioning

5
terraformmigrationsenvscontainersdata_volumes

Service catalogue

1
mounted application repositories

Stack by layer

Orchestration
Docker ComposeMakefile entrypointsDeclarative config file
Provisioning
TerraformLocked provider versionsEnvironment definitions
Datastores
PostgreSQLMongoDBRedisCloud emulation
Platform services
NginxRabbitMQSupervisorScheduled jobsDatabase admin UI

Delivered work

Platform

  • Declarative configuration driving the entire service set.
  • Container definitions for datastores, queue, proxy, supervisor and scheduler.
  • Managed data volumes so local state survives rebuilds.
  • Make-based entrypoints wrapping the common operations.

Environments

  • Service catalogue holding application repositories separately from the platform.
  • Terraform modules with a locked provider set.
  • Local cloud service emulation for credential-free integration work.
  • Requirement verification step for tooling and port availability.

Modules and demo strategy

Single configuration surface

Turns environment setup into a diff.

  • One file describes the stack; changes are reviewable.
  • Removes the drift between developers' machines.

Service catalogue

Keeps platform and products decoupled.

  • Applications are mounted, not vendored.
  • Either side can move without dragging the other.

Infrastructure as code

Makes hosted environments reproducible.

  • Locked provider versions prevent silent drift.

Frontend documentation format

How this project is presented

Explained through what it removes: a day of setup per developer.
Architecture shown as a bootstrap flow.
Service counts read from the platform definition.