- Mobile app
- Website
- Back office
Club GTM
- Sector
- Sport & clubs
- Delivered as
- Mobile app
- Website
- Languages
- EN / FR
“When You Know You Know”
(The project)
A membership platform for a golf and business-networking club: members book events and use partner privileges from a mobile app, visitors discover the club on the website, and staff run packs, events, payments and notifications from one back office.
(Context)
One club, three surfaces to keep in sync.
Club GTM sells tiered membership packs, runs a calendar of golf and networking events and publishes rankings, press and trips. Members use their phones, visitors the web, and staff run it all, yet everyone must see the same memberships, quotas and events.
One Laravel API sits behind the iOS and Android app, the website with its member area, and the admin back office, where staff manage members, packs, events, payment requests, points and notifications.
(Key figures)
- apps on one API
- 3
- on every client
- EN / FR
- transactional emails
- 15
- cancellation window
- 2 days
The decisions that shaped it
Club rules live on the server
Each pack has a yearly event quota plus limits per event type, with extra allowances for VIP members. The apps only display the verdict.
Quotas that hold
No overbooking
Attendance is written inside a transaction that locks the event first, so two members confirming at the same moment are handled one after the other.
Data integrity
Membership requests reviewed by staff
Paid packs are requested with bank transfer details and approved in the back office, while the free pack activates instantly. No card gateway to run.
Simple payments
Targeted push, delivered in batches
Staff send notifications to everyone or to a filter (city, club, handicap, sector, pack). Tokens are validated, deduplicated and sent in batches, and one failed batch never stops the rest.
Reliable delivery
(How it works)
Booking a place at an event
Open the event
The app shows the event, its types, the packs allowed, attendee counts and the member’s remaining quota.
Confirm
The member confirms a place for the chosen event type.
Lock and save
The server locks the event, records the attendance and commits, so places are never double-sold.
Cancel in time
A cancellation is accepted up to two days before the event and frees the place immediately.
Inside the project
Captures of the delivered build, grouped by product. Select one to see it at full size.
Mobile app
4 captures
Website
Visuals to come
Technology
- Mobile
- Expo 54
- React Native 0.81
- React Navigation 7
- Reanimated 4
- FlashList
- Front end
- React 19
- React Router 7
- MUI 6
- Ant Design 5
- i18next
- Back end
- Laravel 11
- PHP 8.2
- Sanctum
- MySQL
- State
- Redux Toolkit
- Axios
- Real-time & notifications
- Expo push
- Laravel Mail
- Laravel scheduler
- Infrastructure
- EAS Build & Submit
- expo-updates
(Next project)
Glovpix
Creative AI

