Eight pages describing the platform you build over Sprints 3 to 11: one view of the whole
system, one deeper design view, and one page for each of the six things a team is responsible for.
Everything on these pages is drawn from the contracts in docs/contracts/ and from the
service code, so a name you see here is a name you will type.
Read them in order. The block diagram tells you the shape of the system in ten seconds. The high-level design tells you how a request moves through it and where the trust boundaries sit. The service pages tell you what is inside each box, and each one is the page to have open while you are writing that service.
orders, prices the fill, settles it in one transaction, publishes the
outcome. Runs the market-data poller on a schedule.
NestJS 11 · :3000
Auth service
Registration, login, refresh, current user. The only service that ever sees a password.
Angular · :4200
Frontend
Login, dashboard, order ticket, blotter. Holds the JWT and attaches it on every call.
Python 3.12+ · DuckDB
Analytics service
Batch extract, transform, load into a star schema, and the dashboard that reads it.
Kafka · :9092
Kafka event backbone
Three topics, their keys, partitions and retention, and which service is on each end.
One visual language runs through every page. Colour carries meaning and nothing else does, so a shape you recognise on one page means the same thing on the next.
The platform is five services and a broker the team stands up and owns, plus infrastructure that is handed to you. Two rules follow from that and they explain most of what you will see.
One language per service. Java in the Trade REST API and the Trade Executor, TypeScript in the auth service and the frontend, Python in the analytics service and nowhere else. A container that runs two runtimes is a container nobody wants to debug.
One place for each responsibility. One service accepts orders. One service executes them and calls the Fauxnance API. One service sees passwords. One store answers "what is my balance now" and a different store answers "what did the desk trade last quarter".