{"id":30196484,"url":"https://github.com/arsh342/careercompass","last_synced_at":"2025-10-10T17:05:26.374Z","repository":{"id":306956507,"uuid":"1026829314","full_name":"arsh342/careercompass","owner":"arsh342","description":"A next-generation AI-powered career platform transforming how employers and job seekers connect","archived":false,"fork":false,"pushed_at":"2025-08-01T17:15:49.000Z","size":29791,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-13T05:34:23.880Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://careercompassai.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/arsh342.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-26T17:43:51.000Z","updated_at":"2025-08-01T17:15:53.000Z","dependencies_parsed_at":"2025-07-28T17:44:30.716Z","dependency_job_id":"d65e4f32-ceeb-47e5-ab64-6b05fef334f8","html_url":"https://github.com/arsh342/careercompass","commit_stats":null,"previous_names":["arsh342/careercompass"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/arsh342/careercompass","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arsh342%2Fcareercompass","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arsh342%2Fcareercompass/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arsh342%2Fcareercompass/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arsh342%2Fcareercompass/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/arsh342","download_url":"https://codeload.github.com/arsh342/careercompass/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/arsh342%2Fcareercompass/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279004815,"owners_count":26083783,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-10T02:00:06.843Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-08-13T05:23:12.149Z","updated_at":"2025-10-10T17:05:26.331Z","avatar_url":"https://github.com/arsh342.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🧭 CareerCompass\n\n\u003e _Navigate your career journey with AI-powered job matching and analytics._\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"docs/logo.png\" alt=\"CareerCompass Logo\" width=\"150\" style=\"background-color: white; padding: 20px; border-radius: 10px;\" /\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eA next-generation AI-powered career platform transforming how employers and job seekers connect\u003c/strong\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://careercompassai.vercel.app/\"\u003e🌐 Live Demo\u003c/a\u003e •\n  \u003ca href=\"https://github.com/arsh342/careercompass\"\u003e📦 Repository\u003c/a\u003e •\n  \u003ca href=\"https://devpost.com/software/careercompass-8sa5kg\"\u003e🏆 Devpost\u003c/a\u003e •\n  \u003ca href=\"mailto:arsth134@gmail.com\"\u003e📧 Contact\u003c/a\u003e\n\u003c/p\u003e\n\n## 📹 Demo Video\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://youtu.be/Pj2JjIGT_zs\"\u003e\n    \u003cimg src=\"https://img.youtube.com/vi/Pj2JjIGT_zs/maxresdefault.jpg\" alt=\"CareerCompass Demo Video\" width=\"600\" /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://youtu.be/Pj2JjIGT_zs\"\u003e▶️ Watch the Demo Video\u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n## � Project Highlights\n\n### 🏆 Competition Features\n\n- **AI-Powered Matching**: Advanced semantic analysis for intelligent job-candidate pairing\n- **Comprehensive Analytics**: Real-time dashboards with actionable insights for both users and employers\n- **Automated Workflows**: Complete email automation system handling 300+ daily notifications\n- **Performance Optimized**: Recently optimized for production with 95+ Lighthouse scores\n- **Enterprise Ready**: Scalable architecture supporting thousands of concurrent users\n\n### 💡 Innovation Points\n\n- **Dual-sided Platform**: Seamlessly serves both job seekers and employers with role-based experiences\n- **AI Content Enhancement**: Genkit-powered resume and job description improvements\n- **ATS Scoring System**: Helps candidates optimize resumes for Applicant Tracking Systems\n- **Real-time Collaboration**: Live application tracking with instant status updates\n- **Smart Recommendations**: Machine learning algorithms providing personalized career guidance\n\n### 🎯 Problem Solving\n\n- **Job Market Inefficiency**: Eliminates manual screening with AI-powered candidate ranking\n- **Application Black Hole**: Provides transparent application tracking and automated status updates\n- **Skills Gap Analysis**: Identifies and suggests improvements for career advancement\n- **Recruitment Bottlenecks**: Streamlines hiring process with bulk candidate management tools\n\n---\n\n## 🧠 What is CareerCompass?\n\nCareerCompass is a modern, AI-driven job and talent matching platform that revolutionizes how employers and job seekers connect. Built with cutting-edge technology and powered by advanced AI algorithms, it creates intelligent matches between opportunities and candidates while providing deep analytics and insights.\n\nThe platform serves as a comprehensive ecosystem where job seekers can discover personalized opportunities, track their applications, and receive AI-powered recommendations, while employers can efficiently find top talent, manage postings, and analyze recruitment metrics.\n\n### 🎯 Mission Statement\n\nTo democratize access to career opportunities by leveraging artificial intelligence to create meaningful connections between talent and employers, fostering growth for individuals and organizations alike.\n\n### 🌟 Vision\n\nBecome the leading AI-powered career platform that transforms how people discover, apply for, and secure their dream jobs while helping employers build exceptional teams.\n\n---\n\n## ✨ Key Features\n\n### 🚀 For Job Seekers (Employees)\n\n#### Profile Management\n\n- **Rich User Profiles**: Create comprehensive profiles with education, employment history, skills, interests, and career goals\n- **Portfolio Integration**: Link your GitHub, personal website, and LinkedIn profiles\n- **Skills Assessment**: AI-powered skill matching and gap analysis\n- **Profile Visibility**: Control who can see your profile and contact information\n\n#### Job Discovery \u0026 Matching\n\n- **AI-Powered Recommendations**: Receive personalized job suggestions based on your profile and preferences\n- **Smart Search**: Advanced search with filters for location, job type, skills, and company\n- **Match Scoring**: See percentage matches with detailed explanations for each opportunity\n- **Skill-Based Search**: Find jobs that match your specific skill sets\n\n#### Application Management\n\n- **One-Click Applications**: Apply to multiple positions with pre-filled information\n- **Application Tracking**: Monitor the status of all your applications in one dashboard\n- **Bookmark System**: Save interesting opportunities for later review\n- **Application Analytics**: Track your application success rates and patterns\n\n#### Career Development\n\n- **ATS Score Analysis**: Get feedback on how your resume performs against Applicant Tracking Systems\n- **Resume Enhancement**: AI-powered suggestions to improve your resume content\n- **Career Path Insights**: Understand skill requirements for your target roles\n\n### 🧑‍💼 For Employers\n\n#### Talent Acquisition\n\n- **Smart Job Posting**: Create detailed job postings with AI assistance for better descriptions\n- **Candidate Discovery**: Find qualified candidates even before they apply\n- **AI Candidate Ranking**: Automatically rank applicants based on job requirements\n- **Bulk Candidate Outreach**: Invite multiple qualified candidates to apply\n\n#### Analytics \u0026 Insights\n\n- **Recruitment Dashboard**: Comprehensive analytics on job performance and candidate quality\n- **Application Trends**: Track application volumes, sources, and conversion rates\n- **Candidate Analytics**: Analyze candidate skills, experience levels, and fit scores\n- **Hiring Metrics**: Monitor time-to-hire, cost-per-hire, and success rates\n\n#### Candidate Management\n\n- **Application Review**: Streamlined interface for reviewing and managing applications\n- **Candidate Profiles**: Access detailed candidate information, portfolios, and social profiles\n- **Communication Tools**: Built-in messaging and status update systems\n- **Collaboration Features**: Team-based candidate evaluation and feedback\n\n### 🧠 AI-Powered Capabilities\n\n#### Matching Algorithm\n\n- **Semantic Skill Matching**: Goes beyond keyword matching to understand skill relationships\n- **Experience Level Assessment**: Automatically categorizes candidates by experience level\n- **Cultural Fit Analysis**: Considers company values and candidate preferences\n- **Performance Prediction**: Estimates candidate success probability for specific roles\n\n#### Content Enhancement\n\n- **Job Description Optimization**: AI suggests improvements to attract better candidates\n- **Resume Parsing**: Extracts and structures information from uploaded resumes\n- **Cover Letter Enhancement**: Helps candidates craft compelling cover letters\n- **Interview Question Generation**: Suggests relevant interview questions based on job requirements\n\n#### Communication Automation\n\n- **Smart Notifications**: Relevant updates and recommendations via email and in-app\n- **Application Status Updates**: Automated candidate communication throughout the hiring process\n- **Personalized Recommendations**: Tailored job suggestions based on user behavior and preferences\n\n---\n\n## 🔄 AI Flows \u0026 Architecture\n\n### Core AI Flows\n\n#### 🔍 `findAndRankCandidates`\n\n**Purpose**: Intelligently finds and ranks employees for employer's active job postings\n\n**Process**:\n\n1. **Data Collection**: Aggregates all active job postings and extracts required skills\n2. **Candidate Filtering**: Excludes already-reviewed applicants and inactive profiles\n3. **AI Scoring**: Uses Gemini AI to score candidates based on profile-to-job alignment\n4. **Ranking Algorithm**: Applies weighted scoring considering skills match, experience level, and availability\n5. **Result Generation**: Returns top candidates with detailed justifications and match explanations\n\n**Input**: Employer ID, optional skill filters, experience level preferences\n**Output**: Ranked list of candidates with match scores and reasoning\n\n#### 🎯 `findMatchingCandidates`\n\n**Purpose**: Discovers employees who match specific opportunity requirements\n\n**Process**:\n\n1. **Requirement Extraction**: Parses job posting to identify required and preferred skills\n2. **Skill Normalization**: Standardizes skill names and identifies synonyms\n3. **Candidate Matching**: Filters employee profiles with matching skills\n4. **Availability Check**: Ensures candidates are actively seeking opportunities\n5. **Notification Trigger**: Automatically notifies matching candidates about new opportunities\n\n**Input**: Opportunity ID, minimum match percentage\n**Output**: List of matching candidates ready for outreach\n\n#### 📄 `parseResume`\n\n**Purpose**: Extracts structured information from uploaded resume files\n\n**Process**:\n\n1. **File Processing**: Handles PDF, DOCX, and TXT resume formats\n2. **Content Extraction**: Uses OCR and text parsing to extract raw content\n3. **AI Analysis**: Employs Gemini AI to identify and categorize information\n4. **Data Structuring**: Organizes extracted data into standardized profile fields\n5. **Quality Assessment**: Validates and scores the completeness of extracted information\n\n#### 🎨 `enhanceText`\n\n**Purpose**: Improves user-generated content using AI assistance\n\n**Process**:\n\n1. **Content Analysis**: Evaluates current text for clarity, impact, and relevance\n2. **Context Understanding**: Considers the purpose and target audience\n3. **Enhancement Generation**: Creates improved versions while maintaining user's voice\n4. **Multiple Options**: Provides several enhancement alternatives\n5. **User Selection**: Allows users to choose preferred enhancements\n\n#### 📧 `sendApplicationStatusEmail`\n\n**Purpose**: Automated communication system for application updates\n\n**Process**:\n\n1. **Template Selection**: Chooses appropriate email template based on status change\n2. **Content Personalization**: Customizes content with candidate and job details\n3. **Delivery Optimization**: Schedules emails for optimal engagement times\n4. **Tracking Integration**: Includes analytics tracking for email performance\n5. **Follow-up Scheduling**: Sets up automated follow-up sequences\n\n### 🏗️ Technical Architecture\n\n#### Frontend Architecture\n\n- **Framework**: Next.js 15 with React 18 and TypeScript\n- **Styling**: Tailwind CSS with custom component library\n- **State Management**: React Context API with custom hooks\n- **Authentication**: Firebase Auth with Google OAuth integration\n- **Data Fetching**: SWR for caching and real-time updates\n\n#### Backend Architecture\n\n- **API Layer**: Next.js API routes with serverless functions\n- **Database**: Firebase Firestore with real-time subscriptions\n- **File Storage**: Firebase Storage for resume and media files\n- **AI Integration**: Google Genkit framework with Gemini AI models\n- **Email Service**: Brevo for transactional email delivery\n\n#### AI Integration Layer\n\n- **Model Selection**: Gemini Pro for complex reasoning, Gemini Flash for quick tasks\n- **Prompt Engineering**: Structured prompts with context and examples\n- **Response Parsing**: Robust JSON parsing with fallback mechanisms\n- **Error Handling**: Graceful degradation when AI services are unavailable\n- **Performance Optimization**: Request batching and response caching\n\n---\n\n## 🏗️ Tech Stack\n\n### Frontend Technologies\n\n| Technology          | Version | Purpose                                      |\n| ------------------- | ------- | -------------------------------------------- |\n| **Next.js**         | 15.3.3  | React framework with App Router \u0026 API routes |\n| **React**           | 18.x    | UI library for component-based architecture  |\n| **TypeScript**      | 5.x     | Type safety and developer experience         |\n| **Tailwind CSS**    | 3.4.1   | Utility-first CSS framework                  |\n| **Lucide React**    | Latest  | Optimized icon library with tree-shaking     |\n| **React Hook Form** | 7.x     | Form handling with validation                |\n| **Zod**             | 3.x     | Schema validation and type inference         |\n\n### Backend \u0026 Database\n\n| Technology             | Purpose                                    |\n| ---------------------- | ------------------------------------------ |\n| **Firebase Firestore** | NoSQL database with real-time capabilities |\n| **Firebase Auth**      | Authentication with Google OAuth           |\n| **Cloudinary**         | Image storage and optimization             |\n| **Next.js API Routes** | Serverless API endpoints                   |\n| **Brevo SMTP**         | Email delivery and automation              |\n\n### AI \u0026 Machine Learning\n\n| Technology           | Purpose                                   |\n| -------------------- | ----------------------------------------- |\n| **Gemini Pro**       | Advanced language model for complex tasks |\n| **Gemini Flash**     | Fast language model for quick operations  |\n| **Google AI Studio** | Model management and monitoring           |\n\n### Development \u0026 Deployment\n\n| Technology              | Purpose                              |\n| ----------------------- | ------------------------------------ |\n| **Vercel**              | Deployment and hosting platform      |\n| **GitHub**              | Version control and collaboration    |\n| **ESLint**              | Code linting and quality assurance   |\n| **TypeScript Compiler** | Type checking and build optimization |\n\n### External Services\n\n| Service              | Purpose                        |\n| -------------------- | ------------------------------ |\n| **Brevo API**        | Email campaigns and automation |\n| **Cloudinary**       | Image optimization and CDN     |\n| **Google Analytics** | Usage analytics and insights   |\n\n### UI Components\n\n| Library      | Purpose                          |\n| ------------ | -------------------------------- |\n| **Radix UI** | Accessible component primitives  |\n| **Recharts** | Data visualization and charts    |\n| **Date-fns** | Date manipulation and formatting |\n| **CMDK**     | Command palette interface        |\n\n---\n\n## 📊 Analytics \u0026 Dashboards\n\n### Employee Dashboard\n\n- **Personalized Recommendations**: AI-curated job suggestions based on profile and preferences\n- **Application Tracking**: Real-time status updates for all submitted applications\n- **Profile Analytics**: Insights into profile views, application success rates, and skill demand\n- **Match Analysis**: Detailed breakdown of why specific jobs were recommended\n- **Career Progress**: Track skill development and career goal achievements\n\n### Employer Dashboard\n\n- **Recruitment Metrics**:\n  - Application volume trends and source analysis\n  - Time-to-hire and cost-per-hire calculations\n  - Candidate quality scores and hiring success rates\n  - Job posting performance analytics\n- **Candidate Pipeline**:\n  - Visual representation of candidates at each stage\n  - Bulk actions for efficient candidate management\n  - Automated status updates and notifications\n- **AI Insights**:\n  - Top-performing job descriptions and posting strategies\n  - Skill demand analysis in your industry\n  - Competitive salary benchmarking\n  - Candidate availability forecasting\n\n### Real-time Analytics\n\n- **Live Application Tracking**: Instant notifications for new applications\n- **Dynamic Job Performance**: Real-time updates on job posting metrics\n- **Candidate Engagement**: Track how candidates interact with your postings\n- **Market Intelligence**: Industry trends and competitive analysis\n\n### Data Visualization\n\n- **Interactive Charts**: Built with Recharts for responsive data display\n- **Trend Analysis**: Historical data with predictive insights\n- **Comparative Metrics**: Benchmark performance against industry standards\n- **Custom Reports**: Exportable reports for stakeholder presentations\n\n---\n\n## 🎨 UI/UX Design System\n\n### Design Philosophy\n\n- **User-Centric**: Every interface element prioritizes user needs and workflows\n- **Accessibility First**: WCAG 2.1 AA compliant with screen reader support\n- **Mobile Responsive**: Optimized for all device sizes with touch-friendly interactions\n- **Performance Focused**: Minimal loading times with progressive enhancement\n\n### Visual Design Language\n\n#### Color Palette\n\n| Color             | Hex Code  | Usage                                     |\n| ----------------- | --------- | ----------------------------------------- |\n| **Primary Blue**  | `#3F51B5` | CTAs, links, active states                |\n| **Accent Orange** | `#FF9800` | Highlights, notifications, success states |\n| **Neutral Gray**  | `#F0F2F5` | Backgrounds, containers                   |\n| **Dark Text**     | `#1A202C` | Primary text content                      |\n| **Light Text**    | `#718096` | Secondary text, descriptions              |\n| **Success Green** | `#48BB78` | Positive actions, confirmations           |\n| **Warning Red**   | `#F56565` | Errors, destructive actions               |\n\n#### Typography System\n\n| Element         | Font            | Weight | Size          | Usage                  |\n| --------------- | --------------- | ------ | ------------- | ---------------------- |\n| **Headlines**   | Inter           | 700    | 2.5rem-3rem   | Page titles, hero text |\n| **Subheadings** | Inter           | 600    | 1.5rem-2rem   | Section headers        |\n| **Body Text**   | Inter           | 400    | 1rem-1.125rem | Content, descriptions  |\n| **Caption**     | Inter           | 400    | 0.875rem      | Helper text, metadata  |\n| **Code**        | Source Code Pro | 400    | 0.875rem      | Technical content      |\n\n#### Spacing \u0026 Layout\n\n- **Grid System**: 12-column responsive grid with Tailwind CSS\n- **Spacing Scale**: 4px base unit (0.25rem) with geometric progression\n- **Container Widths**: Mobile-first approach with breakpoints at 640px, 768px, 1024px, 1280px\n- **Component Spacing**: Consistent 16px-24px padding for cards and containers\n\n### Component Library\n\n#### Interactive Elements\n\n- **Buttons**: 5 variants (primary, secondary, outline, ghost, destructive) with hover and focus states\n- **Form Controls**: Unified styling for inputs, selects, textareas with validation states\n- **Navigation**: Breadcrumbs, pagination, tabs with active and disabled states\n- **Cards**: Flexible containers with headers, content, and footer sections\n\n#### Data Display\n\n- **Tables**: Responsive with sorting, filtering, and pagination\n- **Charts**: Interactive visualizations with Recharts integration\n- **Badges**: Status indicators with color-coded meanings\n- **Avatars**: User profile images with fallback initials\n\n#### Feedback \u0026 Communication\n\n- **Notifications**: Toast messages with success, warning, and error variants\n- **Modals**: Accessible dialog boxes with backdrop and focus management\n- **Loading States**: Skeleton screens and spinner components\n- **Empty States**: Helpful illustrations and call-to-action guidance\n\n### Responsive Design Strategy\n\n- **Mobile First**: Base styles target mobile devices, enhanced for larger screens\n- **Flexible Layouts**: CSS Grid and Flexbox for adaptive component arrangements\n- **Touch Optimization**: 44px minimum touch targets with appropriate spacing\n- **Progressive Enhancement**: Core functionality works without JavaScript\n\n### Animation \u0026 Micro-interactions\n\n- **Subtle Transitions**: 200-300ms duration for state changes\n- **Loading Animations**: Smooth skeleton loading and progress indicators\n- **Hover Effects**: Gentle scale and color transitions\n- **Page Transitions**: Smooth navigation with preserved scroll position\n\n---\n\n## 🛠️ Project Structure\n\n```\ncareercompass/\n├── 📁 src/                           # Source code directory\n│   ├── 🤖 ai/                       # AI-powered logic and flows\n│   │   ├── genkit.ts                # Genkit configuration and setup\n│   │   ├── dev.ts                   # Development AI server\n│   │   └── flows/                   # AI flow implementations\n│   │       ├── analyze-opportunity-description.ts\n│   │       ├── enhance-text.ts\n│   │       ├── find-and-rank-candidates.ts\n│   │       ├── find-matching-candidates.ts\n│   │       ├── generate-profile-summary.ts\n│   │       ├── parse-resume.ts\n│   │       ├── send-application-status-email.ts\n│   │       ├── send-welcome-email.ts\n│   │       └── types.ts\n│   │\n│   ├── 🌐 app/                      # Next.js app directory\n│   │   ├── layout.tsx               # Root layout component\n│   │   ├── page.tsx                 # Landing page\n│   │   ├── globals.css              # Global styles\n│   │   ├── (app)/                   # Authenticated app routes\n│   │   │   ├── layout.tsx           # App layout with navigation\n│   │   │   ├── dashboard/           # User dashboard\n│   │   │   ├── opportunities/       # Job browsing and details\n│   │   │   ├── profile/             # User profile management\n│   │   │   ├── saved/               # Saved opportunities\n│   │   │   ├── applied/             # Application tracking\n│   │   │   ├── users/               # User directory\n│   │   │   └── employer/            # Employer-specific routes\n│   │   │       ├── dashboard/       # Employer dashboard\n│   │   │       ├── postings/        # Job posting management\n│   │   │       ├── analytics/       # Recruitment analytics\n│   │   │       └── profile/         # Company profile\n│   │   ├── (auth)/                  # Authentication routes\n│   │   │   ├── login/               # Sign in page\n│   │   │   ├── signup/              # Registration page\n│   │   │   └── forgot-password/     # Password reset\n│   │   └── api/                     # API routes\n│   │       ├── genkit/              # AI API endpoints\n│   │       └── upload/              # File upload handling\n│   │\n│   ├── 🧩 components/               # Reusable UI components\n│   │   ├── ui/                      # Base UI components\n│   │   │   ├── button.tsx           # Button variants\n│   │   │   ├── card.tsx             # Card containers\n│   │   │   ├── form.tsx             # Form components\n│   │   │   ├── input.tsx            # Input fields\n│   │   │   ├── dialog.tsx           # Modal dialogs\n│   │   │   ├── table.tsx            # Data tables\n│   │   │   ├── chart.tsx            # Chart components\n│   │   │   └── ...                  # Other UI primitives\n│   │   ├── client-sidebar-header.tsx\n│   │   ├── logo-nav.tsx\n│   │   ├── main-nav.tsx\n│   │   ├── search-bar.tsx\n│   │   ├── skills-input.tsx\n│   │   ├── theme-provider.tsx\n│   │   ├── theme-toggle.tsx\n│   │   └── user-nav.tsx\n│   │\n│   ├── 🔄 context/                  # React context providers\n│   │   ├── AuthContext.tsx          # Authentication state\n│   │   └── SavedOpportunitiesContext.tsx # Saved jobs state\n│   │\n│   ├── 🪝 hooks/                    # Custom React hooks\n│   │   ├── use-debounce.ts          # Input debouncing\n│   │   ├── use-mobile.tsx           # Mobile detection\n│   │   └── use-toast.ts             # Toast notifications\n│   │\n│   └── 📚 lib/                      # Utility libraries\n│       ├── comprehensiveAtsScorer.ts # ATS scoring algorithm\n│       ├── firebase.ts              # Firebase configuration\n│       └── utils.ts                 # General utilities\n│\n├── 📖 docs/                         # Documentation assets\n│   ├── blueprint.md                 # Project blueprint\n│   └── logo.png                     # Project logo\n│\n├── ⚙️ Configuration Files\n│   ├── tailwind.config.ts           # Tailwind CSS configuration\n│   ├── next.config.ts               # Next.js configuration\n│   ├── tsconfig.json                # TypeScript configuration\n│   ├── components.json              # UI components config\n│   ├── postcss.config.mjs           # PostCSS configuration\n│   ├── firestore.rules              # Firestore security rules\n│   ├── apphosting.yaml              # Firebase App Hosting config\n│   ├── package.json                 # Dependencies and scripts\n│   └── .env.local                   # Environment variables (local)\n│\n├── 📄 Documentation\n│   ├── README.md                    # Project documentation\n│   ├── LICENSE                      # MIT License\n│   └── PROJECT_INFO.txt             # Additional project info\n│\n└── 🔒 Security \u0026 Deployment\n    ├── .gitignore                   # Git ignore rules\n    ├── .eslintrc.json               # ESLint configuration\n    └── vercel.json                  # Vercel deployment config\n```\n\n### Key Directories Explained\n\n#### 🤖 `/src/ai/`\n\nContains all AI-related functionality including Genkit flows, model configurations, and AI utility functions. Each flow is responsible for a specific AI task like candidate ranking or resume parsing.\n\n#### 🌐 `/src/app/`\n\nNext.js 13+ app directory structure with route groups for organizing authenticated and public routes. API routes handle server-side logic and AI integrations.\n\n#### 🧩 `/src/components/`\n\nModular component architecture with a base UI library and application-specific components. Components are designed for reusability and consistency.\n\n#### 🔄 `/src/context/`\n\nReact Context providers for global state management including authentication, theme, and application-specific state like saved opportunities.\n\n#### 📚 `/src/lib/`\n\nUtility functions, third-party service configurations, and business logic that doesn't fit into components or hooks.\n\n---\n\n## 🚀 Getting Started\n\n### Prerequisites\n\n- **Node.js** 18.x or higher\n- **npm** or **yarn** package manager\n- **Git** for cloning the repository\n\n### Quick Setup for Judges/Reviewers\n\n1. **Clone the repository**\n\n   ```bash\n   git clone https://github.com/arsh342/careercompass.git\n   cd careercompass\n   ```\n\n2. **Install dependencies**\n\n   ```bash\n   npm install\n   ```\n\n   **Note**: All credentials are for demonstration purposes only.\n\n3. **Start Development Server**\n\n   ```bash\n   npm run dev\n   ```\n\n**Important**: For Gmail addresses as employers, use email/password login instead of Google OAuth.\n\n### Development Setup (Full Configuration)\n\nFor developers wanting to set up their own instance:\n\n1. **Environment Configuration**\n   Create a `.env.local` file in the root directory:\n\n   ```env\n   # Firebase Configuration\n   NEXT_PUBLIC_FIREBASE_API_KEY=your_api_key\n   NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_project.firebaseapp.com\n   NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_project_id\n   NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_project.appspot.com\n   NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_sender_id\n   NEXT_PUBLIC_FIREBASE_APP_ID=your_app_id\n\n   # Google AI Configuration\n   GOOGLE_GENAI_API_KEY=your_gemini_api_key\n\n   # Brevo Email Service\n   BREVO_API_KEY=your_brevo_api_key\n   BREVO_SMTP_HOST=smtp-relay.brevo.com\n   BREVO_SMTP_PORT=587\n   BREVO_SMTP_USER=your_brevo_email\n   BREVO_SMTP_PASS=your_brevo_password\n\n   # Cloudinary Configuration\n   CLOUDINARY_CLOUD_NAME=your_cloud_name\n   CLOUDINARY_API_KEY=your_api_key\n   CLOUDINARY_API_SECRET=your_api_secret\n   ```\n\n2. **Firebase Setup**\n\n   - Create a new Firebase project\n   - Enable Authentication (Email/Password + Google provider)\n   - Set up Firestore database with security rules\n   - Configure storage bucket for file uploads\n\n3. **Google AI Setup**\n\n   - Create Google Cloud project\n   - Enable Gemini API\n   - Generate API key for Genkit integration\n\n4. **Brevo Email Setup**\n\n   - Create Brevo account\n   - Generate API key and SMTP credentials\n   - Set up email templates for automation\n\n5. **Cloudinary Setup**\n\n   - Create Cloudinary account\n   - Get cloud name, API key, and secret\n   - Configure upload presets\n\n#### Database Setup\n\n1. **Firestore Collections**:\n\n   - `users` - User profiles and authentication data\n   - `opportunities` - Job postings and details\n   - `applications` - Application submissions and status\n   - `companies` - Company profiles and information\n\n2. **Security Rules**: Configure Firestore rules for data access control\n\n3. **Indexes**: Set up composite indexes for complex queries\n\n## 🔧 Configuration\n\n### Firebase Configuration\n\n- **Authentication**: Google OAuth setup\n- **Firestore**: Database rules and indexes\n- **Storage**: File upload configurations\n\n### AI Configuration\n\n- **API Keys**: Secure key management\n- **Rate Limiting**: Request throttling and quotas\n\n### Email Configuration\n\n- **Brevo Integration**: SMTP and template setup\n- **Notification Settings**: Automated email triggers\n\n---\n\n### User Experience\n\n- ✅ **Enhanced Job Cards**: Rich job descriptions with compensation, experience, and education details\n- ✅ **Advanced Search**: Skill-based and location-based search with highlighting\n- ✅ **Pagination System**: Efficient browsing with 15 items per page and keyboard navigation\n- ✅ **Mobile Responsiveness**: Improved mobile experience across all components\n- ✅ **Theme Integration**: Seamless dark/light mode with cycling theme toggle\n- ✅ **Smarter Matching**: Enhanced AI algorithms for better candidate-job matching\n- ✅ **Resume Enhancement**: AI-powered content improvement suggestions\n- ✅ **Profile Analytics**: Detailed insights into profile performance and visibility\n- ✅ **Predictive Recommendations**: Machine learning-based job suggestions\n- ✅ **Streamlined Navigation**: Role-aware navigation with intuitive user flows\n- ✅ **Real-time Updates**: Live application status and notification system\n- ✅ **Advanced Filtering**: Multi-criteria search with saved preferences\n- ✅ **Accessibility**: WCAG 2.1 AA compliance with screen reader support\n\n## ⚖️ License\n\nThis project is licensed under the **MIT License**.\nSee the [LICENSE](./LICENSE) file for details.\n\n---\n\n## 🤝 Contributors\n\n- 👨‍💻 Arsh Singh – [LinkedIn](https://www.linkedin.com/in/arshsingh342/) | [Email](mailto:arsth134@gmail.com)\n\n---\n\n## 📣 Submission\n\nThis project was created for **[FusionHacks 2](https://fusionhacks-2.devpost.com/?ref_feature=challenge\u0026ref_medium=discover\u0026_gl=1*wkk4ge*_gcl_au*MTIyMjA5NTg5MC4xNzUzMTc4MDIy*_ga*MTMzMDYxMjk3NS4xNzUzMTc4MDIy*_ga_0YHJK3Y10M*czE3NTM4NzI4NjIkbzE5JGcxJHQxNzUzODcyOTMzJGo0OSRsMCRoMA..)** and is proudly open-sourced for future development and collaboration.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farsh342%2Fcareercompass","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farsh342%2Fcareercompass","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farsh342%2Fcareercompass/lists"}