SportsMania

SportsMania

Full-stack sports venue booking platform — web, NestJS API, and React Native app with OTP auth and real-time slot locking.

Key Features

Robust functionality driving the SportsMania platform for both players and venue owners.

Booking Engine

Concurrent booking engine with slot locking to prevent double-booking.

Multi-Pitch

Multi-pitch venues with per-day operating hours.

Security & RBAC

Dual-role RBAC: Player vs Venue Owner with ownership verification. Twilio OTP authentication and JWT sessions.

Media & Mobile

S3-backed media gallery with upload, reorder, and batch delete. React Native app with cinematic animations and owner management flows.

Overview

SportsMania connects players with bookable sports venues and gives venue owners a complete digital operations hub. Players browse venues by city, compare pitch availability and hourly rates, and book time slots. Owners onboard venues with multiple pitches, set day-specific operating hours, manage image galleries, and handle bookings through a secure role-based system.

The platform spans three deliverables: a Next.js 16 web frontend (App Router, React 19, Tailwind CSS v4), a production NestJS backend with PostgreSQL/Prisma, and a React Native Expo mobile app with glassmorphic UI for both Player and Owner roles.

The backend implements concurrent slot locking, booking lifecycle states (PENDING -> CONFIRMED -> COMPLETED), pricing snapshots, guest bookings, and owner-scoped venue management. The mobile app delivers venue discovery feeds, owner dashboards, gallery upload/reorder, and secure token storage via Expo Secure Store.

SportsMania Homepage

Deliverables

Web Frontend

FOUNDATION

Next.js 16, React 19, Tailwind CSS v4, TypeScript

API Backend

SHIPPED

NestJS, PostgreSQL, Prisma, AWS S3, Twilio

Mobile App

SHIPPED

React Native, Expo Router, NativeWind, Reanimated

Roadmap

Live match dashboard (WebSocket scores & commentary)

Player & team profile pages

Fantasy league auth and state management

Technologies

TypeScriptNext.jsReactNestJSPostgreSQLPrismaReact NativeExpoAWS S3TwilioJWT