A REST API built with FastAPI that providdes secure user authentication and workout management for the FitnessApp frontend.
- User Registration
- JWT authentication
- Login system
- Protected endpoints
- Create, read, update, delete workouts
- Workouts specific to each user
- Pagination
- SQLAlchemy
- PostgreSQL Database
- CORS support for React Frontend
- Automated testing with pytest
- Python
- FastApi
- SQLAlchemy
- PostgreSQL
- JWT Authentication
- Passlib / bcrypt
- Pytest
- Uvicorn
- Backend deployed on Vercel
- PostgreSQL database hosted on Neon
-
Clone the Repository: git clone https://github.com/mpbe/FitnessApp.git
-
Create the virtual environment: python -m venv venv
-
Activate environment: venv\scripts\activate
-
Install dependencies: pip install -r requirements.txt
-
Create .env and copy the contents of '.env.example' into it
-
Run server: uvicorn app.main:app -reload
To test out the app, when the server is running navigate to: http://127.0.0.1:8000/docs
- Docker deployment
- Refresh tokens for JWT authentication
- Rate limiting
- Improved API documentation
