Problem
Discretionary traders often keep their trading rules and journal scattered across notes and spreadsheets. TradePlan gives them one structured place to define a trading plan up front and log trades against it, so plan and execution can be compared after the fact instead of relying on memory.
Constraints
- Needed to run cheaply on the self-hosted infrastructure rather than a managed platform, since it started as a personal tool.
- Fast iteration mattered more than a mature framework — Vite’s dev loop was chosen over a heavier meta-framework for that reason.
Architecture
Architecture diagram — available on request
A React + Vite single-page app talks to a FastAPI backend over a REST API, with Postgres for storage. Runs as a set of Docker containers on the self-hosted stack described in the infrastructure case study.
Stack
React, Vite, FastAPI, PostgreSQL, Docker.
My role
Built the whole thing — frontend, API, data model, and deployment onto the existing self-hosted stack.
Outcome
In active use.