SwiftHire makes hiring easy! Whether you're a recruiter looking to fill positions quickly or a job seeker searching for the perfect opportunity, SwiftHire makes the entire hiring process intelligent, fast, and seamless. With AI-driven job recommendations and recruiter-centric management tools, you can find the right match — every time.
- ⚡ AI-Based Job Recommendations: Intelligent suggestions for job seekers based on skills, experience, and preferences using Google Gemini 2.0 Flash API with LangChain integration.
 - 💼 Recruiter Management: Recruiters can post job requirements, manage listings, and track applications for their organization.
 - 🏢 Company Hiring Dashboard: View recent job postings, open positions, and applicants in a single dashboard.
 - 📱 Responsive UI: Clean, modern design for seamless experience on all devices.
 - 🔐 Authentication: Secure signup/login system using JWT.
 - 💬 Contact Form: Reach out directly to the team for queries or support.
 
| Layer | Technology | 
|---|---|
| Frontend | React, Tailwind CSS | 
| Backend | Node.js, Express.js | 
| Database | Supabase (PostgreSQL) | 
| AI | Job Recommendation Engine using Google Gemini 2.0 Flash API + LangChain | 
| API | RESTful APIs with JWT authentication | 
git clone https://github.com/icodervivek/swifthire.git
cd swifthirecd server
npm installcd client
npm installCreate a .env file in the backend:
PORT=3000                      # The port your backend server will run on (e.g., 3000)
SUPABASE_URL=https://xyz.supabase.co  # Your Supabase project URL (found in your Supabase dashboard)
SUPABASE_SERVICE_KEY=your_service_role_key  # Supabase API key with service role or anon key for server-side access
JWT_SECRET=your_secret_key      # Secret key used to sign JWT tokens for authentication
GOOGLE_API_KEY=your_gemini_api_key  # API key for Google Gemini (used for AI-based job recommendations)
FRONTEND_ORIGIN=http://localhost:5173  # URL of your frontend (used for CORS)Create a .env file in the client:
VITE_API_URL=http://localhost:3000  # URL where your backend is running (used for API calls from frontend)cd server
npm run devcd client
npm run devOpen your browser at http://localhost:5173 to see the app.
You can run the entire project (frontend + backend) using Docker Compose for an easier local setup.
git clone https://github.com/icodervivek/swifthire.git
cd swifthireYou must create .env files inside both server/ and client/ folders before building.
PORT=3000
SUPABASE_URL=https://xyz.supabase.co
SUPABASE_SERVICE_KEY=your_service_role_key
JWT_SECRET=your_secret_key
GOOGLE_API_KEY=your_gemini_api_key
FRONTEND_ORIGIN=http://localhost:5173VITE_API_URL=http://localhost:3000docker-compose up --buildThis command:
- Builds the Docker images for backend and frontend.
 - Starts both containers automatically.
 - Loads your 
.envvariables securely (not exposed publicly). 
Once the containers are running:
- Frontend → http://localhost:5173
 - Backend → http://localhost:3000
 
docker-compose up -dTo stop everything:
docker-compose downswifthire/
│
├─ client/           # React frontend
├─ server/           # Node.js + Express backend
├─ docker-compose.yml
├─ README.md
- 🔑 Sign Up / Sign In: Create an account or login to access profile and hire workers.
 - 🧑💼 Job Seekers: View available jobs, get AI-based recommendations tailored to skills and experience using Google Gemini 2.0 Flash API + LangChain.
 - 🏢 Hiring Companies / Recruiters: Post job requirements, manage listings, track applications, and maintain organization-specific job data.
 - 📩 Contact Form: Submit queries or feedback directly from the app.
 - 👤 Profile Page: View and manage your account details securely.
 
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.
SwiftHire – Making hiring simple, fast, and reliable with AI-powered job recommendations and recruiter management using Google Gemini 2.0 Flash API + LangChain. 💼✨