A Django REST framework API for managing fitness class bookings with Swagger/OpenAPI documentation.
- Class listing with available slots
- Booking management
- Client booking history
- Interactive API documentation
- Timezone-aware scheduling
- Python 3.8+
- Django 3.2+
- SQLite (included) or PostgreSQL
-
Clone the repository: git clone https://github.com/Karan-githubb/Omnify.git cd Omnify
-
Create and activate virtual environment: python -m venv venv source venv/bin/activate # Linux/Mac venv\Scripts\activate # Windows
-
Install dependencies: pip install -r requirements.txt
-
Run migrations: python manage.py migrate
-
Create admin user: python manage.py createsuperuser
-
Seed sample data: python manage.py seed_classes
python manage.py runserver
Access interactive documentation at:
- Swagger UI: http://localhost:8000/
- ReDoc: http://localhost:8000/redoc/
Endpoint | Method | Description |
---|---|---|
/classes/ |
GET | List all upcoming classes |
/book/ |
POST | Create a new booking |
/bookings/ |
GET | Get bookings by client email |