Hooked Boxing Gym Platform

Full Stack Development2024
NestJSTypeScriptPostgreSQLTypeORMExpoReact NativeNext.jsTailwindCSSStripeAWS S3JWTSwagger

Hooked is a modern boxing gym management platform that provides a seamless experience for both gym administrators and members. The platform consists of a mobile app built with Expo/React Native, a web interface using Next.js, and a robust NestJS backend. It features comprehensive class management, user authentication, subscription handling, and media storage capabilities.

15+

API Endpoints

RESTful endpoints for class, user, and subscription management

JWT

Authentication

Secure token-based authentication system

5+

Database Models

Core entities including users, classes, and subscriptions

Technical Architecture

The platform follows a microservices-inspired architecture with three main components: a React Native mobile app, a Next.js web interface, and a NestJS backend. The backend serves as a centralized API handling authentication, database operations, and third-party service integrations.

NestJS Backend API
Expo/React Native Mobile App
Next.js Web Interface
PostgreSQL Database
Stripe Payment Integration
AWS S3 Storage
JWT Authentication

Technical Details

Frontend

Framework: Expo/React Native for mobile, Next.js for web

State Management: React Context and Hooks

Styling: TailwindCSS with NativeWind for mobile, Shadcn UI for web

Notable Features

  • File-based routing with Expo Router
  • Responsive design across platforms
  • Native device feature integration
  • Modern UI components with Shadcn

Backend

Framework: NestJS

Database: PostgreSQL with TypeORM

API: RESTful API with Swagger documentation

Notable Features

  • JWT-based authentication
  • Role-based access control
  • Stripe webhook integration
  • AWS S3 integration
  • Database migrations and seeding

Infrastructure

Hosting: Not specified in codebase

Deployment: Environment-based configuration with dotenv

Monitoring: Built-in NestJS logging

Notable Features

  • Environment-based configuration
  • TypeScript support across stack
  • Automated testing setup
  • Database migration system

Team & Role

Team Information

Team Size: Not specified in codebase

Role: Full Stack Development

Responsibilities

  • Backend API development
  • Mobile app development
  • Web interface development
  • Database design and implementation
  • Third-party service integration
  • Security implementation
Hooked Boxing Gym Platform - Phil Collins