Přeskočit na obsah
Klientský produkt

NAVIGYM.cz

Pro soukromé fitness NAVI v Plzni jsem postavil web a rezervační systém. Zákazník si objedná celý prostor, zaplatí online a dostane kód, který mu v době návštěvy otevře dveře.

Full-stack vývojář
NAVI Private Gym
2026

Produkt
Samoobslužné soukromé fitness
Rozsah
Web, rezervace, platby, vstup a administrace
Role
Full-stack vývoj
Integrace
Comgate · Nuki · Resend · Supabase
Vizuál projektuAutentické rozhraní produktu
Denní přehled administrace · ukázková data
Denní přehled administrace · ukázková data
Správa rezervací · ukázková data
Správa rezervací · ukázková data

O projektu

Fitness funguje bez recepce. Zákazníci si potřebují návštěvu zařídit online a majitel chce mít rezervace, platby i vstupy pod kontrolou na jednom místě. Postavil jsem zákaznický web i administraci, ze které se provoz řídí.

Co umí

  • Rezervace a platba: zákazník vybere jeden nebo více 75minutových termínů a zaplatí je společně přes Comgate. Rezervovat může i bez účtu. Vybrané termíny se během platby podrží, aby za stejný čas nezaplatili dva lidé.
  • Zákaznický účet: přehled dalších návštěv, historie rezervací, doklady ke stažení a možnost přesunu nebo zrušení termínu. Registrovaní zákazníci také vidí, kolik návštěv jim zbývá do každého desátého započítaného vstupu zdarma.
  • Vstup do fitness: každá návštěva má vlastní Nuki PIN, platný jen po dobu rezervace a času na sprchu. Systém kód ověří v zámku a pošle e-mailem. Zákazník si může zapnout i doručení přes WhatsApp.
  • Ceny: majitel může měnit vstupné, plánovat akční období a vytvářet vouchery s pevnou nebo procentní slevou. Pokud sleva pokryje celou cenu, rezervace se potvrdí bez přechodu na platební bránu.
  • Denní provoz: kalendář, otevírací doba, uzavírky a evidence zákazníků. Přehledy Dnes a Zítra ukazují, které návštěvy mají připravenou platbu, kód a zprávy, aby majitel mohl problém vyřešit před příchodem zákazníka.
  • Finance: přijaté platby, statistiky rezervací a vytížení, PDF doklady a jejich opětovné odeslání. Přijaté peníze jsou oddělené od slev; případné vratky řeší obsluha v Comgate.
  • Obsah webu: fotografie, vybavení, ceník a FAQ, s editací textů, médií a e-mailových šablon. Součástí je i přihlášení a odhlášení newsletteru, stažení rezervace do kalendáře a oddělené souhlasy s analytikou a marketingem.
  • Když se něco nepovede: pravidelné kontroly opakují ověření platby, přípravu kódu a doručení zpráv. Administrace ukazuje neúspěšné kroky, historii doručení a události zámku, které potřebují pozornost.

Na čem to běží

Next.js 15, React 19 a TypeScript pro web, zákaznický účet i administraci. Rozhraní používá Tailwind CSS, React Hook Form a Zod; administrátorský kalendář běží na FullCalendar.

PostgreSQL na Supabase ukládá rezervace a platby, dotazy řeší Drizzle ORM. Databáze brání překryvu rezervací. Supabase zajišťuje také přihlášení, ukládání médií a aktualizace dostupnosti.

Comgate zpracovává platby, Nuki přístup do fitness, Resend e-maily a Zernio doručování WhatsApp PINů. PDFKit vytváří doklady. Výsledky jednotlivých služeb se evidují, aby majitel viděl, co proběhlo a co je potřeba zopakovat.

Aplikace běží na Vercelu s pravidelnými kontrolami rezervací, vstupů a zpráv. Sentry zaznamenává chyby. Rezervační logiku pokrývají jednotkové a databázové testy, průchod aplikací a přístupnost kontroluje Playwright s axe.

Řešíte něco podobného?

Beru vybranou produktovou práci a jsem otevřený seniorním nabídkám. Nejrychleji e-mailem.

Napište mi