The Idea
Every product starts with a problem. PlaayUp started with a simple observation: managing badminton sessions, tracking players, collecting payments, and coordinating group memberships was still being done over WhatsApp groups and spreadsheets.
We saw an opportunity to build something better.
Architecture Decisions
Mobile-First
We chose React Native for the mobile client because:
- Single codebase for iOS and Android
- Near-native performance
- Rich ecosystem and community
Backend: .NET + Firebase
We used a hybrid approach:
- Firebase for real-time data sync, authentication, and push notifications
- ASP.NET Core API for complex business logic and payment processing
- Azure for hosting, scaling, and monitoring
This separation keeps the real-time experience snappy while allowing complex server-side operations.
Key Engineering Challenges
Challenge 1: Real-Time Session State
When multiple players book slots simultaneously, we need strong consistency. We solved this using Firestore transactions with optimistic locking:
await runTransaction(db, async (transaction) => {
const slotRef = doc(db, "slots", slotId);
const slotDoc = await transaction.get(slotRef);
if (slotDoc.data()?.booked) {
throw new Error("Slot already taken");
}
transaction.update(slotRef, { booked: true, userId });
});
Challenge 2: Offline Support
Courts often have patchy WiFi. We implemented Firestore offline persistence so the app remains fully functional without connectivity, syncing when back online.
What We Learned
- Ship early, iterate fast — Our first beta had rough edges, but real user feedback shaped the product far better than assumptions
- Mobile UX is its own craft — Designing for touch, small screens, and varying network conditions requires intentional thinking
- Firebase scales surprisingly well — We hit no scaling issues up to our current user base
- Investing in good error handling pays off — Most of our 5-star reviews mention reliability
Results
After 3 months of development and 2 months of beta testing:
- ✅ Live on Android (iOS coming soon)
- ✅ 100+ sessions managed
- ✅ Zero critical production bugs
- ✅ Average app rating: 4.8 ⭐
What's Next for PlaayUp
- iOS App Store release
- Tournament management module
- AI-powered player matchmaking
- Multi-sport support (squash, table tennis)
This is just the beginning. If you're managing a sports facility and want a tool like PlaayUp — reach out to us. We'd love to help.
— BitPropel Team