vaha_
SR Srpski
← Indeks No. 20 / 21

Dosje · Vlastita aplikacija · fitnes

Teretana

Dnevnik treninga

Sopstvena aplikacija za praćenje treninga, ne fork: Rust axum i rusqlite u jednom binarnom fajlu, a sučelje su čisti ES moduli bez build koraka. Katalog od 1324 vežbe sa animiranim prikazima i mapom mišića, sesije sa serijama i težinama, istorija po mišićnoj grupi i generator plana. Prijava ide na mejl kod i Cloudflare Turnstile, podaci su razdvojeni po korisniku.

Oblast
Vlastita aplikacija · fitnes
Godine
2026 → danas
Status
u pogonu
Sistem
Web
Teretana — Dnevnik treninga
Snimak ekrana · No. 20 Teretana — katalog vežbi, mapa mišića i istorija serija.

Šta radi

01 / 09
  1. Katalog od 1324 vežbe sa animacijama, uvezen skriptom, sa prevodom naziva grupa
  2. GIF-ovi pretvoreni u ping-pong MP4: 6 do 10 puta manji fajl i tečna petlja
  3. Mapa mišića kao SVG, sa istorijom, najboljim težinama i statusom „nisi još probao"
  4. Sesije, serije i ponavljanja, izračunato opterećenje i procena kalorija
  5. Generator plana: tri najrađenije grupe plus dopuna novima
  6. Prijava: mejl kod (šest cifara, deset minuta, ograničen broj pokušaja) i Turnstile
  7. Izolacija podataka po korisniku na svakom upitu, sesije od 30 dana
  8. Sučelje bez build koraka, sa View Transitions i pravilom da se animira samo sadržaj
  9. Keš pravila po vrsti: API bez keša, HTML sa revalidacijom, mediji immutable

Slojevi

02 / 03

Backend — Rust

axumrusqliteargon2migrations
  • Jedan binarni fajl, SQLite baza sa migracijama u kodu
  • Sve rute za podatke filtriraju po prijavljenom korisniku
  • Kod za prijavu se čuva kao heš, ne u čistom tekstu
  • Keširanje i zaglavlja na jednom middleware sloju

Sučelje

ES modulesView TransitionsSVG
  • Svežanj tabova: Danas, Vežbe, Mišići, Plan, Profil
  • Animira se samo sadržaj, fiksni tabbar ne skače pri navigaciji
  • Mapa mišića se generiše iz geometrije, ne crta ručno
  • Sitni detalji: sheet bez skoka, stagger ograničen na deset elemenata

Podaci i mediji

PythonffmpegSQLite
  • Uvoz kataloga i medija jednom skriptom, ponovljivo
  • HD video ide kroz faststart, inače browser čeka ceo fajl
  • Spajanje videa sa vežbom samo po tačnom imenu, bez nagađanja
  • Kalorije su procena: MET po seriji, trajanje ograničeno

Tehnologije

03 / 03
Jezici RustJavaScriptPythonSQL 04
Okviri i alati axumrusqliteargon2TurnstileView Transitionsffmpeg 06
Infrastruktura nplpa-vpssystemdCaddy 03

Svi sistemi u dosjeu

Natrag na indeks →