Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
88 changes: 88 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,13 @@
## Table of Contents

- [✨ What is Career Pilot?](#-what-is-career-pilot)
- [🔄 How It Works](#-how-it-works)
- [📸 Screenshots](#-screenshots)
- [📂 Project Structure](#-project-structure)
Comment thread
shikha123-ops marked this conversation as resolved.
- [🧭 Feature Pillars](#-feature-pillars)
- [🚀 Quick Install](#-quick-install)
- [🔑 Environment Variables](#-environment-variables)
- [🏁 Getting Started](#-getting-started)
- [📝 Pillar 1 — Resume Studio](#-pillar-1--resume-studio)
- [🎤 Pillar 2 — Interview Sim](#-pillar-2--interview-sim)
- [💼 Pillar 3 — Jobs & Tracker](#-pillar-3--jobs--tracker)
Expand Down Expand Up @@ -66,6 +71,48 @@ It's modular by design: the Express backend exposes 30+ route groups, the React

---

## 🔄 How It Works

Career Pilot guides users through their complete career journey:

1. Sign up or log in securely.
2. Build or import your resume.
3. Enhance it using AI and ATS optimization.
4. Practice mock interviews with AI.
5. Search and track job applications.
6. Build and deploy your portfolio.
7. Analyze GitHub repositories and improve your profile.
8. Connect with the community and participate in fellowships.

## 📸 Screenshots

| Home Page | Resume Enhancer |
|-----------|-----------------|
| ![](docs/images/home_page.png) | ![](docs/images/resume_enhancer.png) |

| Mock Interview | Job Tracker |
|----------------|-------------|
| ![](docs/images/mock_interview.png) | ![](docs/images/job_tracker.png) |

| Email Generator | Community Board |
|-----------------|-----------------|
| ![](docs/images/email_generator_form.png) | ![](docs/images/community_board.png) |

## 📂 Project Structure

```text
career-pilot/
├── backend/ # Express backend and APIs
├── frontend/ # React + Vite frontend
├── docs/ # Project documentation
├── API_DOCS/ # API documentation
├── firebase/ # Firebase configuration
├── Docker-compose.yml
└── README.md
```
Comment thread
coderabbitai[bot] marked this conversation as resolved.

For a detailed architecture overview, see the **Architecture at a Glance** section below.

## 🧭 Feature Pillars

Career Pilot is organized into six tightly-integrated pillars. Each pillar ships its own UI hub, REST routes, AI services, and MongoDB models — and they share authentication, presence, notifications, and rate limiting.
Expand Down Expand Up @@ -115,6 +162,47 @@ cp frontend/.env.example frontend/.env
# Edit frontend/.env — set VITE_API_URL, VITE_FIREBASE_* keys
```

## 🔑 Environment Variables

Career Pilot uses separate environment configuration files for the backend and frontend.

Copy the example files before starting the application:

```bash
cp backend/.env.example backend/.env
cp frontend/.env.example frontend/.env
```

### Backend Environment Variables

| Category | Important Variables |
|----------|---------------------|
| Server | `PORT`, `NODE_ENV`, `FRONTEND_URL` |
| Database | `MONGODB_URI` |
| Firebase Admin | `FIREBASE_PROJECT_ID`, `FIREBASE_STORAGE_BUCKET`, `FIREBASE_SERVICE_ACCOUNT_PATH` |
| AI Services | `GEMINI_API_KEY`, `OPENAI_API_KEY`, `GROQ_API_KEY`, `AI_PROVIDER` |
| Job Search | `RAPIDAPI_KEY`, `RAPIDAPI_HOST` |
| Email | `EMAIL_USER`, `EMAIL_PASS`, `EMAIL_HOST`, `EMAIL_PORT` |
| Redis | `REDIS_URL` |
| Payments | `RAZORPAY_KEY_ID`, `RAZORPAY_KEY_SECRET` |
| OAuth | `LINKEDIN_CLIENT_ID`, `LINKEDIN_CLIENT_SECRET`, `GITHUB_CLIENT_ID`, `GITHUB_CLIENT_SECRET` |
| Deployment | `NETLIFY_ACCESS_TOKEN`, `VERCEL_TOKEN`, `CLOUDFLARE_API_TOKEN` |
| Security | `ENCRYPTION_KEY`, `TOTP_ENCRYPTION_KEY` |

> Refer to `backend/.env.example` for the complete list of backend environment variables and descriptions.

### Frontend Environment Variables

| Category | Important Variables |
|----------|---------------------|
| Backend API | `VITE_API_URL`, `VITE_API_BASE` |
| Firebase Client | `VITE_FIREBASE_API_KEY`, `VITE_FIREBASE_AUTH_DOMAIN`, `VITE_FIREBASE_PROJECT_ID`, `VITE_FIREBASE_STORAGE_BUCKET`, `VITE_FIREBASE_MESSAGING_SENDER_ID`, `VITE_FIREBASE_APP_ID`, `VITE_FIREBASE_MEASUREMENT_ID` |
| File Upload | `VITE_MAX_SIZE_MB` |
| Feature Flags | `VITE_ENABLE_PREMIUM_THEMES` |

> Refer to `frontend/.env.example` for the complete list of frontend environment variables and descriptions.


### Run locally

```bash
Expand Down