Przejdź do treści

~/projekty / lean-track

LeanTrack

Tracker kalorii i makroskładników: ustawiasz cele, zapisujesz posiłki w dzienniku dnia i śledzisz postępy. Frontend w Vue 3, API w Fastify, PostgreSQL.

rola
full stack: API w Fastify, frontend w Vue, baza danych
czas
maj 2026
typ
własny
stack
Vue 3 · Fastify · TypeORM · PostgreSQL · Docker
demo.mp4
[wideo demo: nagranie ekranu 1–3 min]

01 / problem

Śledzenie odżywiania bez tarcia

Trzymanie się planu oznacza codzienny podgląd kalorii i makroskładników na tle celów, przy jak najmniejszym wysiłku przy zapisywaniu posiłku.

02 / rozwiązanie

Cele, produkty i dzienny dziennik

Użytkownicy rejestrują się i logują, ustawiają cele żywieniowe, zarządzają listą produktów i dodają wpisy do dziennika żywieniowego. API udostępnia endpointy auth, products, diary i goals, a frontend jest zorganizowany według tych samych funkcji.

  • [screenshot 1]

    [podpis]

  • [screenshot 2]

    [podpis]

03 / architektura

Jak to działa

Monorepo pnpm z backendem Fastify + TypeORM (moduły funkcjonalne auth, diary, products i goals; konfiguracja środowiska, JWT i bazy; migracje) oraz frontendem Vue 3 + Vite podzielonym na features, kod współdzielony i router. PostgreSQL działa w Docker Compose. Obie aplikacje używają TypeScript strict, ESLint, Prettier i Vitest.

04 / wyniki

Efekt

05 / wnioski

Czego się nauczyłem

  • Odzwierciedlenie modułów backendu we frontendowych features ułatwia znalezienie każdej funkcji po obu stronach.
  • PRD, specyfikacja techniczna i diagramy przepływów użytkownika leżą w docs/ obok kodu, więc intencja każdego modułu pozostaje udokumentowana.

galeria

  • [zdjęcie]

    [podpis]

  • [zdjęcie]

    [podpis]

  • [zdjęcie]

    [podpis]