FTL Developer Docs¶
FTL (Football Trade League) is a real-time mock trading platform for FIFA 2026. Users trade virtual points on player cards whose prices are driven by live match data and an Automated Market Maker (AMM). The platform runs for 39 days (June 11 – July 19, 2026) targeting Kerala, India.
This site covers the technical implementation: how the services fit together, how to run the stack locally, and the domain vocabulary you need to read the codebase.
Navigation¶
| Section | What you'll find there |
|---|---|
| Getting Started / Architecture at a Glance | The three Go services, how they connect, and a component diagram |
| Getting Started / Repo Layout | The four git repos, their roles, and top-level directory trees |
| Getting Started / Local Setup | Step-by-step: prerequisites, cloning, secrets, starting services, running the frontend |
| Getting Started / Glossary | Definitions for every domain term used in the codebase and docs |
| Architecture | ftl-docs/architecture/12-new-stack-architecture.md — primary architecture reference; ftl-docs/architecture/13-product-requirements.md — PRD with engineering targets |
| Backend | Go services in ftl-backend/cmd/ (api-server, ws-server, flusher); Redis Lua scripts in ftl-backend/internal/redis/lua/; migrations in ftl-backend/migrations/ |
| Frontend | React SPA in ftl-frontend/src/; Playwright E2E tests in ftl-frontend/tests/ |
| Operations | Scale-up/down scripts in ftl-infra/scripts/; staging cost runbook in ftl-docs/reports/azure-cost-audit-2026-05-02.md; production cutover in ftl-docs/guides/PROD-CUTOVER-2026-04.md |
| FAQ | Common questions: why Redis Lua instead of a message queue, why raw Google OAuth, why no HA on Postgres |