Skip to content

Prerequisites

You don’t need everything on day one — each tool is introduced in the module that first uses it — but here’s the full list so you can set up ahead of time.

  • Python 3.12+ and uv — the fast Python package and project manager the backend uses. uv handles the virtualenv, dependencies, and running the app.
  • The Supabase CLI — to run a local Supabase stack and manage migrations, plus a free Supabase account for the hosted project.
  • Docker — Supabase’s local stack runs in Docker, and Module 13 containerizes the FastAPI backend.
  • Flutter 3.x — for the mobile app (Modules 9–10), with an iOS Simulator or Android emulator.
  • Node.js 20+ — for the Svelte web companion (Module 11).
  • A REST clientcurl, HTTPie, or your editor’s REST tool, to exercise the API before the clients exist.

FitTrack is an intermediate project. You’ll get the most out of it if you’re comfortable with:

  • Basic Python — functions, classes, async/await. Deep expertise isn’t required; the FastAPI modules explain the patterns as they go, and lean on Python for TypeScript Developers where a comparison helps.
  • HTTP and REST — methods, status codes, JSON request/response.
  • SQL basics — tables, joins, and simple aggregations. Module 8 goes deeper.
  • Some frontend — you don’t need prior Flutter or Svelte; both are taught from setup. Familiarity with any component framework helps.

You’re set up when:

  • python --version shows 3.12 or newer, and uv --version works.
  • supabase --version works and docker is running.
  • flutter doctor reports no blocking issues.
  • node --version shows 20 or newer.

Next, the roadmap shows where FitTrack fits in the wider series.