Proiecte/TeamTipOut
TeamTipOut
Un calculator de bacșiș pentru echipele din restaurante. Împărțire ponderată după orele lucrate, echipe salvate și un export pe care îl vede toată tura, proiectat și construit în întregime de mine.
- ROL
- Design și dezvoltare
- AN
- 2025–2026
- PLATFORMĂ
- iOS
- STARE
- Publicată în App Store

Echipa, salvată de la o tură la alta
04 / 06
Screen 4 of 6: Echipa, salvată de la o tură la alta
Personalul din restaurante împarte bacșișul la finalul fiecărei ture, de obicei pe hârtie și de obicei greșit.
TeamTipOut calculează cât îi revine fiecărui rol de suport din orele în care s-a suprapus efectiv cu fiecare ospătar, împarte suma pe o echipă salvată și exportă rezultatul într-o formă pe care o poți pune pe masa unui manager fără discuții.
Aceasta e în întregime a mea: produs, interfață, backend, publicarea în magazin și redesignul din 2026. Rulează pe Supabase cu row-level security, RevenueCat pentru abonamente și expo-print pentru export.
Oamenii care o folosesc sunt obosiți, e miezul nopții și e gălăgie în sală. Constrângerea asta a modelat fiecare decizie: cifre mari, puține containere și contrast reglat pentru un telefon ținut la distanță de-un braț.
Publicată în App Store și întreținută activ. E un singur cod care se compilează și pentru Android; build-ul acela nu a fost publicat, pentru că nu a avut nimeni nevoie de el încă. Designul și dezvoltarea sunt amândouă ale mele.
- STARE
- Publicată în App Store
- PLATFORMĂ
- iOS, dintr-un cod multiplatformă
- PUBLICATĂ DIN
- 2025
Trei ecrane îl duc.Un singur dispozitiv, trei stări.

STAREA 01 / 03
Echipa
O tură nu începe de la zero. Echipele se salvează, rolurile rămân, iar orele de intrare și de ieșire sunt singurul lucru pe care mai trebuie să-l introducă cineva la capătul unei nopți lungi.

STAREA 02 / 03
Împărțeala
Rolurile de suport primesc de la ospătarii cu care s-au suprapus efectiv. Fondul, ponderile și fiecare parte în parte se văd toate deodată, așa că nimeni nu trebuie să ia cifra pe încredere.

STAREA 03 / 03
Dovada
O tură se termină cu ceva ce poți trimite mai departe: un PDF sau un link care arată calculul, nu doar totalul. Certurile pe bacșiș sunt de obicei certuri pe o aritmetică pe care n-o vede nimeni.
Două decizii care merită explicate.Părțile care au durat cel mai mult.
D—01
De ce o împărțire egală e nedreaptă
Într-o tură cu intrări decalate, o împărțire egală mută bani pe tăcute. Un ajutor care a lucrat ultimele două ore ia cât unul care a stat toată noaptea, iar cel care a muncit mai mult îl subvenționează pe cel care a muncit mai puțin.
Așa că unitatea de calcul e suprapunerea, nu numărul de oameni. Fiecare om de suport acumulează pondere față de fiecare ospătar pentru minutele în care au fost amândoi în sală, iar fondul se împarte pe matricea aceea.
// weight is minutes on the floor togetherconst weight = overlapMinutes(support, server) // each server funds only their own overlapconst share = server.pool * (weight / totalWeight(server)) return servers.reduce(sum, 0)D—02
Redesignul din 2026, pe șleau
Prima versiune era o interfață închisă la culoare, generică, felul în care arată din oficiu o aplicație făcută repede. Funcționa, era ușor de uitat și făcea un instrument folosit într-o sală gălăgioasă la miezul nopții mai greu de citit decât trebuia.
Refacerea a mutat-o pe un sistem cald, editorial: crem, verde-pădure și un accent mentă, Fraunces pentru cifre și Plus Jakarta Sans pentru interfață. Cifre mai mari, mai puține containere, linii în loc de carduri.
// before: system defaults, everything a cardbg: '#16181C' surface: '#22262C'font: system accent: '#4F8CFF' // after: warm, editorial, figures firstbg: '#F3F0E7' ink: '#163A2B'accent: '#7BE6A3'display: 'Fraunces' ui: 'Plus Jakarta Sans'PE CE E CONSTRUIT
- CLIENT
- React Native · Expo SDK 54 · expo-router · TypeScript strict
- BACKEND
- Supabase: Postgres, row-level security, Edge Functions
- COMERȚ
- RevenueCat: abonamente, pregătite pentru ambele magazine
- IEȘIRE
- expo-print · Sentry · EAS Build · App Store Connect
CREDITE
Design și dezvoltare în întregime ale mele: produs, interfață, backend, publicarea în magazin și redesignul din 2026.
STARE
Publicată în App Store și întreținută activ. Build-ul de Android vine din același cod și nu a fost publicat.
PROIECTUL URMĂTOR
Termkont
Vânzare de containere maritime pentru o firmă din Sankt Petersburg. Un catalog, un flux de cereri și un panou de administrare în spate.
Spune-mi ce construiești.Un plan scris și un preț fix înainte să se miște vreun ban.
Răspund la tot într-o zi lucrătoare. Dacă nu sunt omul potrivit pentru proiect, ți-o spun din start, nu după trei săptămâni.



