Project 03
Padel Booking Platform
An end-to-end platform for a padel club with court booking, payments, invoicing, administration and player rankings. I designed, built, deployed and operate the product independently.

- Role
- Creator / Full-stack Software Engineer
- Stack
- React · Next.js · TypeScript · Node.js · NestJS · Prisma · PostgreSQL · Stripe · Számlázz.hu API · Docker · GitHub Actions
- Status
- Live product
Interface
Product screens at a readable size.
Desktop screens get wide space, mobile screens keep their natural tall rhythm, and missing assets stay visible as export targets.
Add screenshot
Padel Sopron court availability and booking screen
public/projects/padel-sopron/web-booking.webp
Add screenshot
Padel Sopron booking confirmation and payment screen
public/projects/padel-sopron/web-payment.webp
Add screenshot
Padel Sopron admin bookings calendar screen
public/projects/padel-sopron/web-admin-bookings.webp
Add screenshot
Padel Sopron invoices and payment administration screen
public/projects/padel-sopron/web-invoices.webp
Add screenshot
Padel Sopron player rankings screen
public/projects/padel-sopron/web-rankings.webp
Case study
How the product was shaped.
Problem
The product needed to feel personal.
The club needed more than a marketing website: players had to book courts, pay online, receive invoices and record match results, while operators needed reliable administration and visibility into day-to-day club activity.
Approach
The work stayed close to real product flows.
I built a full-stack platform with a React frontend, a NestJS backend, PostgreSQL data model, payment and invoicing integrations, transactional email, admin workflows and Docker-based deployment.
Result
The outcome is a working product, not a concept.
The platform runs as the club's live booking and management system, covering the customer booking journey, online payment, invoicing, match results, rankings and daily administration.
Decisions and trade-offs
- Built a custom booking product instead of forcing the club into a generic tool, because court availability, Hungarian invoicing and ranking workflows needed to fit the business.
- Kept frontend and backend separated behind an explicit API boundary so public booking flows and admin operations can evolve independently.
- Used PostgreSQL and Prisma for relational booking, payment, invoice and ranking data where consistency matters more than schema flexibility.
- Added admin surfaces for bookings, courts, users, invoices, gifts, statistics and ranking so operational work could live inside the product.
Key contributions
- Designed and built the React and TypeScript frontend and the Node.js and NestJS backend
- Implemented court booking, availability and calendar workflows
- Built custom authentication, user management, admin tools and a statistics dashboard
- Added player rankings and match-result recording
- Integrated Stripe payments, Számlázz.hu invoicing and transactional email
- Containerized the services and automated deployment with GitHub Actions
Missing images
Screenshot slots to export next.
- Padel Sopron court availability and booking screenpublic/projects/padel-sopron/web-booking.webp
- Padel Sopron booking confirmation and payment screenpublic/projects/padel-sopron/web-payment.webp
- Padel Sopron admin bookings calendar screenpublic/projects/padel-sopron/web-admin-bookings.webp
- Padel Sopron invoices and payment administration screenpublic/projects/padel-sopron/web-invoices.webp
- Padel Sopron player rankings screenpublic/projects/padel-sopron/web-rankings.webp