Skip to content

All about recruitment process simplified: from background checks, automated CV screening, autopilot hiring, AI one-on-one interviewer, health status checks, engineer customized exams[ you can not cheat],automated scheduling and reminders, automated job posting on all popular platforms such as linkedin, and more, analytics and measures, set your req

License

Notifications You must be signed in to change notification settings

unmatched78/Hire-quick

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Hire Quick - Modern Recruitment Platform API

A comprehensive, high-performance recruitment platform built with FastAPI featuring async operations, AI-powered features, and modern API design.

πŸš€ Features

πŸ” Authentication & Security

  • JWT-based authentication with refresh tokens
  • Role-based access control (Candidate, Recruiter, Admin)
  • Password security with bcrypt hashing
  • Email verification and password reset flows
  • Social authentication support ready

πŸ‘₯ User Management

  • Dual user types: Candidates and Recruiters
  • Profile management with file upload support
  • Profile completion tracking
  • Secure password management

πŸ’Ό Job Management

  • Job posting and management for recruiters
  • Advanced search and filtering capabilities
  • Job save/unsave functionality for candidates
  • Custom application forms per job
  • Job performance analytics

πŸ“„ Application System

  • Dynamic application forms with custom fields
  • File upload support (resumes, portfolios, cover letters)
  • Application status tracking with real-time updates
  • Interview scheduling and management
  • Application analytics and reporting

πŸ€– AI-Powered Features (Ready for Implementation)

  • Resume parsing and analysis
  • Job-candidate matching algorithms
  • Skill extraction and categorization
  • AI interviewer and mock interview sessions
  • Automated CV screening
  • Background verification automation

🏒 Company Management

  • Company profiles and branding
  • Multi-company support for enterprise
  • Company-specific job listings
  • Team management for recruiters

πŸ“Š Analytics & Reporting

  • Application analytics and insights
  • Job performance metrics
  • User engagement tracking
  • Recruitment funnel analysis

πŸ”” Real-time Features

  • WebSocket notifications (ready for implementation)
  • Real-time application updates
  • Chat functionality between candidates and recruiters
  • Live interview scheduling

πŸ—οΈ Technology Stack

  • Backend: FastAPI (Python 3.8+)
  • Database: SQLAlchemy with async support (SQLite for dev, PostgreSQL for production)
  • Authentication: JWT with PyJWT
  • Validation: Pydantic for request/response models
  • Documentation: Automatic OpenAPI/Swagger generation
  • Testing: Comprehensive API test suite
  • File Storage: Local storage with cloud provider support ready

πŸ“ Project Structure

Hire-quick/
β”œβ”€β”€ fastapi_app/                 # Main FastAPI application
β”‚   β”œβ”€β”€ app/
β”‚   β”‚   β”œβ”€β”€ api/v1/endpoints/   # API route handlers
β”‚   β”‚   β”œβ”€β”€ core/               # Core functionality (config, database, security)
β”‚   β”‚   β”œβ”€β”€ models/             # SQLAlchemy database models
β”‚   β”‚   └── schemas/            # Pydantic request/response schemas
β”‚   β”œβ”€β”€ main.py                 # FastAPI application entry point
β”‚   β”œβ”€β”€ requirements.txt        # Python dependencies
β”‚   β”œβ”€β”€ migrate.py             # Database migration script
β”‚   β”œβ”€β”€ test_api.py            # API testing suite
β”‚   └── README.md              # Detailed setup instructions
β”œβ”€β”€ CONVERSION_SUMMARY.md       # FastAPI features details
└── README.md                  # This file

πŸš€ Quick Start

1. Clone the Repository

git clone https://github.com/unmatched78/Hire-quick.git
cd Hire-quick/fastapi_app

2. Install Dependencies

pip install -r requirements.txt

3. Set Up Environment

cp .env.example .env
# Edit .env with your configuration

4. Initialize Database

python migrate.py

5. Run the Application

uvicorn main:app --reload --host 0.0.0.0 --port 8000

6. Access the API

πŸ“š API Documentation

The API provides comprehensive endpoints for:

Authentication

  • POST /api/v1/auth/register - User registration
  • POST /api/v1/auth/login - User login
  • POST /api/v1/auth/refresh - Refresh access token
  • POST /api/v1/auth/password-reset - Request password reset
  • POST /api/v1/auth/verify-email - Verify email address

User Management

  • GET /api/v1/users/me - Get current user profile
  • PUT /api/v1/users/candidate-profile - Update candidate profile
  • PUT /api/v1/users/recruiter-profile - Update recruiter profile
  • POST /api/v1/users/upload-profile-picture - Upload profile picture

Job Management

  • GET /api/v1/jobs - List jobs with filtering and search
  • POST /api/v1/jobs/ - Create new job (recruiters only)
  • GET /api/v1/jobs/{job_id} - Get job details
  • POST /api/v1/jobs/{job_id}/save - Save job for later

Applications

  • GET /api/v1/applications/ - List applications
  • POST /api/v1/applications/ - Submit job application
  • GET /api/v1/applications/{id} - Get application details
  • PUT /api/v1/applications/{id}/status - Update application status

Companies

  • GET /api/v1/companies/ - List companies
  • POST /api/v1/companies/ - Create company profile
  • GET /api/v1/companies/{id} - Get company details
  • GET /api/v1/companies/{id}/jobs - Get company jobs

πŸ§ͺ Testing

Run the comprehensive API test suite:

python test_api.py

πŸ”§ Configuration

Key environment variables:

# Database
DATABASE_URL=sqlite:///./hire_quick.db

# Security
SECRET_KEY=your-secret-key-here
ACCESS_TOKEN_EXPIRE_MINUTES=30
REFRESH_TOKEN_EXPIRE_DAYS=7

# Email (for notifications)
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=your-email@gmail.com
SMTP_PASSWORD=your-app-password

πŸš€ Deployment

Docker Deployment (Recommended)

# Build and run with Docker
docker build -t hire-quick-api .
docker run -p 8000:8000 hire-quick-api

Production Deployment

  • Use PostgreSQL for production database
  • Set up Redis for caching and background tasks
  • Configure proper CORS settings
  • Set up SSL/TLS certificates
  • Use a reverse proxy (nginx)
  • Set up monitoring and logging

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“„ License

This project is licensed under the GPL License - see the LICENSE file for details.

πŸ†˜ Support

For support and questions:

🎯 Roadmap

  • AI-powered resume parsing
  • Advanced job matching algorithms
  • Real-time chat system
  • Video interview integration
  • Mobile app API support
  • Advanced analytics dashboard
  • Multi-language support
  • Enterprise SSO integration

Built with ❀️ using FastAPI and modern Python

About

All about recruitment process simplified: from background checks, automated CV screening, autopilot hiring, AI one-on-one interviewer, health status checks, engineer customized exams[ you can not cheat],automated scheduling and reminders, automated job posting on all popular platforms such as linkedin, and more, analytics and measures, set your req

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •