The Gym Management System is built around a microservices architecture, where each service handles a specific domain. This modular approach enables better scalability, maintainability, and independent deployment. The system currently includes (but is not limited to) services responsible for:
- Authentication & User Management – user registration, login, JWT-based authorization.
- Membership Management – handling membership plans and subscriptions.
- Booking & Room Reservation – allowing users to book gym rooms and other facilities.
- NestJS
- TypeORM
- PostgreSQL
- Axios
Follow these steps to set up the project locally for development and testing.
- Operating System: Windows, macOS, or Linux
- Node.js: version 14 or higher
- PostgreSQL: version 12 or higher
- npm or yarn installed globally
# 1. Clone the repository
git clone https://github.com/RybaLP/Gym-Management-System.git
cd Gym-Management-System
# 2. Install dependencies
npm install
# or
yarn installFor each service, create .env file in main folder of service and put inside :
DATABASE_HOST=localhost
DATABASE_PORT=5432
DATABASE_USERNAME=admin
DATABASE_PASSWORD=pass
DATABASE_NAME=membership-database
JWT_SECRET="sekret"auth service requires extra 2 fields : audience and issuer
DATABASE_HOST=localhost
DATABASE_PORT=5433
DATABASE_USERNAME=postgres
DATABASE_PASSWORD=elozelo
DATABASE_NAME=auth-database
JWT_SECRET="secret"
AUDIENCE="twoja-aplikacja.com"
ISSUER="auth-service"To launch all microservices at once, run:
npm run start:allyou can also run single using :
npm runstart:auth
npm run start:client
npm run start:booking
npm run start:membershipenjoy :)
