A FastAPI-based project that allows users to upload resumes. It includes authentication, email confirmation, role-based access control, and file management.
- User Authentication (Registration, Login, Logout)
- Role-Based Access Control (Worker & Hirer roles)
- Profile Picture Upload
- Resume Upload & Management
- Database Integration (PostgreSQL with SQLAlchemy)
- FastAPI - Web framework
- PostgreSQL - Database storage
- SQLAlchemy - ORM for database interaction
- Pydantic - Data validation
- JWT Authentication - Secure API authentication
- Role-Based Access Control - Restrict access based on user roles
- Email Confirmation - Verify user email addresses
- Worker: Can upload & delete their own resume.
- Hirer: Can view resumes of other users.
POST /user/register- Register a new userPOST /user/login- Authenticate and get a token
POST /user/upload_profile_picture- Upload a profile picture
POST /resume/upload_resume- Upload a resume (Workers only)GET /resume- View all resumes (Hirers only)POST /resume/download/{name}/{filename}- download resumes (Hirers only)
- Open Postman or FastAPI Swagger UI (
http://127.0.0.1:8000/docs) - Use Bearer Token Authentication for secured routes
- Add resume downloading route
Elijah📧 [email protected]