
SmartGym · Digitální fitness platforma
Od QR vstupu po chod fitness centra. Jeden systém 24/7.
S týmem SmartGym jsme pomáhali navrhovat a rozvíjet jednu platformu pro člena, provoz i vstupní skener. Mobil, web i zařízení u dveří čtou stejný stav členství.

Informace
- Platforma
- Web, iOS, Android a kiosk
- Doba trvání
- leden až květen 2026
- Naše role
- Platformu jsme rozvíjeli spolu s týmem SmartGym. Pracovali jsme na webu, mobilní aplikaci i backendu.
- Stav
- Veřejná služba v provozu
Technologie
- React
- TypeScript
- Capacitor
- iOS
- Android
- Express
- Bun
- YugabyteDB
- Drizzle ORM
- Tailwind CSS
- GoPay
- Cloudflare R2 & Stream
- FCM / APNs
Co se dozvíte
- 01Dveře nesmí věřit obrázku QR kódu. Rozhoduje krátce platný podpis a aktuální stav členství.
- 02Platební webhook je oznámení, ne zdroj pravdy. Stav platby se znovu ověřuje přímo v GoPay.
- 03Kontrola tváře ověřuje detekci a orientační body fotografie. Nejde o rozpoznávání identity u dveří.
- 04Tři produktové povrchy potřebují stejná oprávnění, audit a disciplinované mobilní i webové vydávání.
01
Od slibu 24/7 k jednomu systému
SmartGym has three surfaces. A member app, an operations web and a kiosk or scanner at the door. Members buy a membership and open QR on their phone. Staff handle clients, training and payments.
These are not three separate products. They share a React and Vite foundation, Capacitor packages it for iOS and Android, and one YugabyteDB-backed API holds membership, payment and visit state.

02
Vstup bez slepé důvěry
The QR rotates every 15 seconds under HMAC-SHA256, so a photographed code dies at once. The scanner takes only the adjacent step. A daily limit, a 15-minute grace and one device per account close it.
The same flow accepts MultiSport and UpBalansea cards plus equipment QR codes. A profile photo runs face detection and landmark checks, which is not the same as recognising a person at the door.



03
Jedna datová stopa pro platby i provoz
GoPay OAuth2 handles one-off and ON_DEMAND payments, 21% VAT, partial refunds and mandate cancellation. No webhook overwrites blindly. The backend refetches from GoPay before changing a membership.
Apple PKPass, Google Wallet and an offline HOTP code carry a pass outside the app. YugabyteDB with Drizzle holds about 92 tables. Cloudflare R2 and Stream serve files and video, FCM and APNs push.




04
Jak jsme systém rozšiřovali s týmem SmartGym
Od ledna do května 2026 jsme s týmem SmartGym postupně rozvíjeli platformu pro členy i provoz.
Rise pomáhal na webu, mobilní aplikaci i backendu. Společně jsme upravovali fungování produktu a připravovali ho na každodenní provoz.

05
Živá služba a zaparkovaná vývojová větev
Veřejná služba je v provozu a SmartGym dál uvádí aktivní lokality i samoobslužný provoz 24/7. Analyzovaná větev je od května pozastavená. Živý produkt tím neskončil.
What is left is one product foundation covering members, operations and physical access. The value is not the screen count. It is that QR, payment, permission and visit meet in one verifiable record.






