{"id":31916886,"url":"https://github.com/anuj-er/careerconnect-platform","last_synced_at":"2026-04-09T20:02:25.304Z","repository":{"id":317665969,"uuid":"1068332063","full_name":"Anuj-er/careerconnect-platform","owner":"Anuj-er","description":"Modern job portal web application built with Spring Boot and React. Features include user authentication, job posting/searching, application tracking, and email notifications.","archived":false,"fork":false,"pushed_at":"2025-10-02T10:02:08.000Z","size":5448,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-02T10:14:18.094Z","etag":null,"topics":["full-stack-development","job-portal","jwt-authentication","mantine-ui","mongodb","react","redux-toolkit","spring-boot","tailwindcss","typescript"],"latest_commit_sha":null,"homepage":"https://careerconnect-platform.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Anuj-er.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-02T08:13:52.000Z","updated_at":"2025-10-02T10:02:11.000Z","dependencies_parsed_at":"2025-10-02T10:24:38.975Z","dependency_job_id":null,"html_url":"https://github.com/Anuj-er/careerconnect-platform","commit_stats":null,"previous_names":["anuj-er/careerconnect-platform"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/Anuj-er/careerconnect-platform","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anuj-er%2Fcareerconnect-platform","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anuj-er%2Fcareerconnect-platform/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anuj-er%2Fcareerconnect-platform/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anuj-er%2Fcareerconnect-platform/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Anuj-er","download_url":"https://codeload.github.com/Anuj-er/careerconnect-platform/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anuj-er%2Fcareerconnect-platform/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279016939,"owners_count":26085906,"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-13T02:00:06.723Z","response_time":61,"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":["full-stack-development","job-portal","jwt-authentication","mantine-ui","mongodb","react","redux-toolkit","spring-boot","tailwindcss","typescript"],"created_at":"2025-10-13T20:14:50.367Z","updated_at":"2025-10-13T20:14:59.504Z","avatar_url":"https://github.com/Anuj-er.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# 🚀 CareerConnect\n\n\u003cimg src=\"https://media1.tenor.com/m/MMo4B6tp-GMAAAAC/job-application.gif\" alt=\"CareerConnect Logo\" width=\"400\"/\u003e\n\n### *Connecting Talent with Opportunity*\n\n[![Live Demo](https://img.shields.io/badge/🌐_Live_Demo-Visit_Site-blue?style=for-the-badge)](https://careerconnect-platform.vercel.app)\n[![Backend API](https://img.shields.io/badge/🔗_Backend_API-Visit_API-green?style=for-the-badge)](https://careerconnect-platform.onrender.com)\n\n![React](https://img.shields.io/badge/React-61DAFB?style=flat-square\u0026logo=react\u0026logoColor=black)\n![TypeScript](https://img.shields.io/badge/TypeScript-3178C6?style=flat-square\u0026logo=typescript\u0026logoColor=white)\n![Spring Boot](https://img.shields.io/badge/Spring_Boot-6DB33F?style=flat-square\u0026logo=spring\u0026logoColor=white)\n![MongoDB](https://img.shields.io/badge/MongoDB-47A248?style=flat-square\u0026logo=mongodb\u0026logoColor=white)\n![JWT](https://img.shields.io/badge/JWT-000000?style=flat-square\u0026logo=jsonwebtokens\u0026logoColor=white)\n\n\u003c/div\u003e\n\n---\n\n## 📋 Table of Contents\n\n- [🎯 Overview](#-overview)\n- [✨ Key Features](#-key-features)\n- [� Screenshots](#-screenshots)\n- [🏗️ Architecture](#️-architecture)\n- [🛠️ Technology Stack](#️-technology-stack)\n- [📁 Project Structure](#-project-structure)\n- [🚀 Getting Started](#-getting-started)\n- [🔧 Configuration](#-configuration)\n- [🐳 Docker Setup](#-docker-setup)\n- [📊 API Documentation](#-api-documentation)\n- [🔐 Security Features](#-security-features)\n- [🌐 Deployment](#-deployment)\n- [👥 Contributing](#-contributing)\n- [📄 License](#-license)\n\n---\n\n## 🎯 Overview\n\n**CareerConnect** is a modern, full-stack job portal application that bridges the gap between talented professionals and innovative companies. Built with cutting-edge technologies, it provides an intuitive platform for job seekers to find their dream opportunities and for employers to discover exceptional talent.\n\n### 🎯 Mission\nTo revolutionize the job search and recruitment process by providing a seamless, efficient, and user-friendly platform that benefits both job seekers and employers.\n\n---\n\n## ✨ Key Features\n\n### 🔍 **For Job Seekers**\n- 🔎 **Smart Job Search** - Advanced filtering by location, salary, experience, and skills\n- 📄 **Resume Builder** - Integrated resume management and profile building\n- 📊 **Application Tracking** - Real-time status updates on job applications\n- 🔔 **Instant Notifications** - Email alerts for new opportunities and application updates\n- 🏢 **Company Insights** - Detailed company profiles and culture information\n\n### 💼 **For Employers**\n- 📝 **Easy Job Posting** - Rich text editor with draft and publish options\n- 👥 **Talent Discovery** - Advanced candidate search and filtering\n- 📈 **Analytics Dashboard** - Track job performance and application metrics\n- ⚡ **Quick Actions** - Streamlined candidate review and selection process\n- 🎯 **Targeted Recruitment** - Skill-based candidate matching\n\n### 🔒 **Security \u0026 Admin**\n- 🛡️ **JWT Authentication** - Secure login with role-based access control\n- 🔐 **Data Protection** - Encrypted sensitive information storage\n- 👤 **Multi-Role Support** - Applicant, Employer, and Admin roles\n- 📧 **Email Verification** - OTP-based account verification system\n- 🔄 **Session Management** - Secure token refresh and logout mechanisms\n\n---\n\n## � Screenshots\n\n\u003cdiv align=\"center\"\u003e\n\n### 🏠 Dashboard\n\u003cimg src=\"./screenshots/dashboard.png\" alt=\"Dashboard\" width=\"800\"/\u003e\n\n### 🔐 Login Page\n\u003cimg src=\"./screenshots/login.png\" alt=\"Login Page\" width=\"800\"/\u003e\n\n### 🔍 Find Jobs\n\u003cimg src=\"./screenshots/findjobs.png\" alt=\"Find Jobs Page\" width=\"800\"/\u003e\n\n### 📝 Post Job\n\u003cimg src=\"./screenshots/postjob.png\" alt=\"Post Job Page\" width=\"800\"/\u003e\n\n### 📋 Posted Jobs Management\n\u003cimg src=\"./screenshots/postedjobs.png\" alt=\"Posted Jobs Page\" width=\"800\"/\u003e\n\n\u003c/div\u003e\n\n---\n\n## 🏗️ Architecture\n\n```mermaid\ngraph TB\n    subgraph \"Client Layer\"\n        A[React Frontend]\n        B[Redux Store]\n        C[Mantine UI Components]\n    end\n    \n    subgraph \"API Gateway\"\n        D[Axios HTTP Client]\n        E[JWT Interceptor]\n    end\n    \n    subgraph \"Backend Services\"\n        F[Spring Boot Application]\n        G[Spring Security]\n        H[JWT Authentication]\n    end\n    \n    subgraph \"Business Logic\"\n        I[Job Service]\n        J[User Service]\n        K[Profile Service]\n        L[Notification Service]\n    end\n    \n    subgraph \"Data Layer\"\n        M[MongoDB Atlas]\n        N[User Collection]\n        O[Job Collection]\n        P[Profile Collection]\n    end\n    \n    subgraph \"External Services\"\n        Q[Email Service]\n        R[File Storage]\n    end\n    \n    A --\u003e D\n    B --\u003e A\n    C --\u003e A\n    D --\u003e E\n    E --\u003e F\n    F --\u003e G\n    G --\u003e H\n    F --\u003e I\n    F --\u003e J\n    F --\u003e K\n    F --\u003e L\n    I --\u003e M\n    J --\u003e M\n    K --\u003e M\n    L --\u003e M\n    M --\u003e N\n    M --\u003e O\n    M --\u003e P\n    F --\u003e Q\n    F --\u003e R\n    \n    classDef frontend fill:#61dafb,stroke:#000,color:#000\n    classDef backend fill:#6db33f,stroke:#000,color:#000\n    classDef database fill:#47a248,stroke:#000,color:#fff\n    classDef external fill:#ff9800,stroke:#000,color:#000\n    \n    class A,B,C frontend\n    class F,G,H,I,J,K,L backend\n    class M,N,O,P database\n    class Q,R external\n```\n\n### � Data Flow Architecture\n\n```mermaid\nsequenceDiagram\n    participant U as User\n    participant F as Frontend\n    participant A as API Gateway\n    participant B as Backend\n    participant D as Database\n    participant E as External Services\n    \n    U-\u003e\u003eF: User Action\n    F-\u003e\u003eA: HTTP Request + JWT\n    A-\u003e\u003eB: Authenticated Request\n    \n    alt Authentication Required\n        B-\u003e\u003eB: Validate JWT Token\n        B-\u003e\u003eB: Check User Permissions\n    end\n    \n    B-\u003e\u003eD: Database Query\n    D--\u003e\u003eB: Query Result\n    \n    alt External Service Needed\n        B-\u003e\u003eE: Service Call\n        E--\u003e\u003eB: Service Response\n    end\n    \n    B--\u003e\u003eA: API Response\n    A--\u003e\u003eF: Processed Response\n    F--\u003e\u003eU: Updated UI\n```\n\n---\n\n## 🛠️ Technology Stack\n\n### Frontend\n- **React 18.3.1** - Modern UI framework\n- **TypeScript 4.9.5** - Type safety\n- **Mantine 7.13.0** - Component library\n- **Tailwind CSS 3.4.7** - Utility-first styling\n- **Redux Toolkit 2.2.7** - State management\n- **React Router 6.26.0** - Navigation\n\n### Backend\n- **Spring Boot 3.3.2** - Java framework\n- **Java 17** - Programming language\n- **MongoDB** - NoSQL database\n- **JWT 0.11.5** - Authentication\n- **Spring Security** - Security framework\n- **Maven** - Dependency management\n\n### DevOps \u0026 Deployment\n- **Docker** - Containerization\n- **Vercel** - Frontend hosting\n- **Render** - Backend hosting\n- **MongoDB Atlas** - Cloud database\n\n---\n\n## 📁 Project Structure\n\n```mermaid\ngraph TD\n    A[careerconnect/] --\u003e B[Backend/]\n    A --\u003e C[Frontend/]\n    A --\u003e D[screenshots/]\n    A --\u003e E[README.md]\n    \n    B --\u003e B1[src/main/java/]\n    B --\u003e B2[pom.xml]\n    B --\u003e B3[Dockerfile]\n    \n    B1 --\u003e B11[com.jobportal.api/]\n    B1 --\u003e B12[com.jobportal.entity/]\n    B1 --\u003e B13[com.jobportal.service/]\n    B1 --\u003e B14[com.jobportal.repository/]\n    B1 --\u003e B15[com.jobportal.jwt/]\n    \n    C --\u003e C1[src/]\n    C --\u003e C2[public/]\n    C --\u003e C3[package.json]\n    \n    C1 --\u003e C11[Components/]\n    C1 --\u003e C12[Pages/]\n    C1 --\u003e C13[Services/]\n    C1 --\u003e C14[Slices/]\n    \n    D --\u003e D1[dashboard.png]\n    D --\u003e D2[login.png]\n    D --\u003e D3[findjobs.png]\n    D --\u003e D4[postjob.png]\n    D --\u003e D5[postedjobs.png]\n    \n    style A fill:#f9f9f9\n    style B fill:#6db33f,color:#fff\n    style C fill:#61dafb,color:#000\n    style D fill:#ff9800,color:#fff\n```\n\n### 🗂️ Detailed Structure\n\n```\ncareerconnect/\n├── Backend/                     # Spring Boot Application\n│   ├── src/main/java/com/jobportal/\n│   │   ├── api/                    # REST Controllers\n│   │   ├── entity/                 # JPA Entities\n│   │   ├── service/                # Business Logic\n│   │   ├── repository/             # Data Access Layer\n│   │   ├── jwt/                    # JWT Security\n│   │   └── config/                 # Configuration\n│   ├── src/main/resources/\n│   ├── pom.xml\n│   └── Dockerfile\n│\n├── Frontend/                       # React Application\n│   ├── src/\n│   │   ├── Components/             # React Components\n│   │   ├── Pages/                  # Main Pages\n│   │   ├── Services/               # API Services\n│   │   ├── Slices/                 # Redux State\n│   │   └── Data/                   # Constants\n│   ├── public/\n│   ├── package.json\n│   └── tailwind.config.js\n│\n├── screenshots/                    # Project Screenshots\n│   ├── dashboard.png\n│   ├── login.png\n│   ├── findjobs.png\n│   ├── postjob.png\n│   └── postedjobs.png\n│\n└── README.md\n```\n\n---\n\n## 🚀 Getting Started\n\n### Prerequisites\n\n\u003cdiv align=\"center\"\u003e\n\n| Requirement | Version | Download |\n|-------------|---------|----------|\n| \u003cimg src=\"https://raw.githubusercontent.com/devicons/devicon/master/icons/java/java-original.svg\" width=\"20\"/\u003e **Java** | 17+ | [Download](https://adoptium.net/) |\n| \u003cimg src=\"https://raw.githubusercontent.com/devicons/devicon/master/icons/nodejs/nodejs-original.svg\" width=\"20\"/\u003e **Node.js** | 16+ | [Download](https://nodejs.org/) |\n| \u003cimg src=\"https://raw.githubusercontent.com/devicons/devicon/master/icons/mongodb/mongodb-original.svg\" width=\"20\"/\u003e **MongoDB** | 5.0+ | [Download](https://www.mongodb.com/try/download/community) |\n| \u003cimg src=\"https://raw.githubusercontent.com/devicons/devicon/master/icons/git/git-original.svg\" width=\"20\"/\u003e **Git** | Latest | [Download](https://git-scm.com/) |\n\n\u003c/div\u003e\n\n### 🔄 Quick Setup\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e1️⃣ Clone Repository\u003c/b\u003e\u003c/summary\u003e\n\n```bash\n# Clone the repository\ngit clone https://github.com/Anuj-er/careerconnect-platform.git\n\n# Navigate to project directory\ncd careerconnect-platform\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e2️⃣ Backend Setup\u003c/b\u003e\u003c/summary\u003e\n\n```bash\n# Navigate to backend directory\ncd Backend\n\n# Create configuration file\ncp src/main/resources/application.properties.example src/main/resources/application.properties\n\n# Edit configuration with your MongoDB URI and other settings\nnano src/main/resources/application.properties\n\n# Build and run the application\n./mvnw clean install\n./mvnw spring-boot:run\n```\n\n**Backend will be available at:** `http://localhost:8080`\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e3️⃣ Frontend Setup\u003c/b\u003e\u003c/summary\u003e\n\n```bash\n# Navigate to frontend directory\ncd Frontend\n\n# Install dependencies\nnpm install\n\n# Start development server\nnpm start\n```\n\n**Frontend will be available at:** `http://localhost:3000`\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e4️⃣ Environment Configuration\u003c/b\u003e\u003c/summary\u003e\n\nCreate `.env` file in Frontend directory:\n```env\nREACT_APP_API_URL=http://localhost:8080/api\nREACT_APP_ENVIRONMENT=development\n```\n\n\u003c/details\u003e\n\n---\n\n## 🔧 Configuration\n\n### Backend Configuration\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e📄 application.properties\u003c/b\u003e\u003c/summary\u003e\n\n```properties\n# Server Configuration\nserver.port=8080\nserver.servlet.context-path=/api\n\n# MongoDB Configuration\nspring.data.mongodb.uri=mongodb+srv://\u003cusername\u003e:\u003cpassword\u003e@cluster.mongodb.net/\u003cdatabase\u003e\n\n# JWT Configuration\njwt.secret=your-secret-key-here\njwt.expiration=86400000\n\n# Email Configuration\nspring.mail.host=smtp.gmail.com\nspring.mail.port=587\nspring.mail.username=your-email@gmail.com\nspring.mail.password=your-app-password\nspring.mail.properties.mail.smtp.auth=true\nspring.mail.properties.mail.smtp.starttls.enable=true\n\n# Application Configuration\napp.name=CareerConnect\napp.version=1.0.0\napp.frontend.url=http://localhost:3000\n```\n\n\u003c/details\u003e\n\n---\n\n## 🐳 Docker Setup\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e🐋 Complete Docker Configuration\u003c/b\u003e\u003c/summary\u003e\n\n**Backend Dockerfile**\n```dockerfile\nFROM openjdk:17-jdk-alpine\nVOLUME /tmp\nCOPY target/*.jar app.jar\nENTRYPOINT [\"java\",\"-jar\",\"/app.jar\"]\nEXPOSE 8080\n```\n\n**Frontend Dockerfile**\n```dockerfile\nFROM node:16-alpine AS build\nWORKDIR /app\nCOPY package*.json ./\nRUN npm install\nCOPY . .\nRUN npm run build\n\nFROM nginx:alpine\nCOPY --from=build /app/build /usr/share/nginx/html\nEXPOSE 80\nCMD [\"nginx\", \"-g\", \"daemon off;\"]\n```\n\n**docker-compose.yml**\n```yaml\nversion: '3.8'\n\nservices:\n  mongodb:\n    image: mongo:5.0\n    container_name: careerconnect-db\n    environment:\n      MONGO_INITDB_ROOT_USERNAME: admin\n      MONGO_INITDB_ROOT_PASSWORD: password\n    ports:\n      - \"27017:27017\"\n    volumes:\n      - mongodb_data:/data/db\n\n  backend:\n    build: ./Backend\n    container_name: careerconnect-backend\n    environment:\n      SPRING_DATA_MONGODB_URI: mongodb://admin:password@mongodb:27017/careerconnect?authSource=admin\n    ports:\n      - \"8080:8080\"\n    depends_on:\n      - mongodb\n\n  frontend:\n    build: ./Frontend\n    container_name: careerconnect-frontend\n    environment:\n      REACT_APP_API_URL: http://localhost:8080/api\n    ports:\n      - \"3000:80\"\n    depends_on:\n      - backend\n\nvolumes:\n  mongodb_data:\n```\n\n**Run with Docker:**\n```bash\n# Start all services\ndocker-compose up -d\n\n# View logs\ndocker-compose logs -f\n\n# Stop services\ndocker-compose down\n```\n\n\u003c/details\u003e\n\n---\n\n## 📊 API Documentation\n\n\u003cdiv align=\"center\"\u003e\n\n### 🔗 Core API Endpoints\n\n**Base URL:** `https://careerconnect-platform.onrender.com/api`\n\n| Endpoint Category | Description | Authentication |\n|------------------|-------------|----------------|\n| 🔐 **Authentication** | User login, registration, password reset | Public |\n| 💼 **Jobs** | Job creation, search, applications | Role-based |\n| 👤 **Users** | Profile management, user data | Authenticated |\n| 🔔 **Notifications** | Real-time alerts and messages | Authenticated |\n\n\u003c/div\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e🔐 Authentication APIs\u003c/b\u003e\u003c/summary\u003e\n\n| Method | Endpoint | Description | Request Body |\n|--------|----------|-------------|--------------|\n| `POST` | `/api/auth/signup` | Register new user | `{email, password, name, role}` |\n| `POST` | `/api/auth/login` | User login | `{email, password}` |\n| `POST` | `/api/auth/logout` | User logout | `{token}` |\n| `POST` | `/api/auth/refresh` | Refresh JWT token | `{refreshToken}` |\n| `POST` | `/api/auth/verify-email` | Verify email with OTP | `{email, otp}` |\n| `POST` | `/api/auth/forgot-password` | Send reset password email | `{email}` |\n| `POST` | `/api/auth/reset-password` | Reset password | `{token, newPassword}` |\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e💼 Job Management APIs\u003c/b\u003e\u003c/summary\u003e\n\n| Method | Endpoint | Description | Access Level |\n|--------|----------|-------------|--------------|\n| `GET` | `/api/jobs` | Get all jobs with filters | Public |\n| `GET` | `/api/jobs/{id}` | Get job by ID | Authenticated |\n| `POST` | `/api/jobs` | Create new job | Employer/Admin |\n| `PUT` | `/api/jobs/{id}` | Update job | Employer/Admin |\n| `DELETE` | `/api/jobs/{id}` | Delete job | Employer/Admin |\n| `POST` | `/api/jobs/{id}/apply` | Apply to job | Applicant |\n| `GET` | `/api/jobs/company/{companyId}` | Get jobs by company | Public |\n| `GET` | `/api/jobs/posted/{userId}` | Get user's posted jobs | Employer |\n\n\u003c/details\u003e\n\n---\n\n## 🎨 UI Components\n\n\u003cdiv align=\"center\"\u003e\n\n### 🧩 Component Architecture\n\n\u003c/div\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e🎯 Core Components Overview\u003c/b\u003e\u003c/summary\u003e\n\n```typescript\n// Component Props Interface Example\ninterface JobCardProps {\n  job: JobDTO;\n  onApply: (jobId: string) =\u003e void;\n  onSave: (jobId: string) =\u003e void;\n  showCompany?: boolean;\n  compact?: boolean;\n}\n\n// Component Implementation\nconst JobCard: React.FC\u003cJobCardProps\u003e = ({\n  job,\n  onApply,\n  onSave,\n  showCompany = true,\n  compact = false\n}) =\u003e {\n  // Component logic\n  return (\n    \u003cCard className=\"job-card\"\u003e\n      {/* Component JSX */}\n    \u003c/Card\u003e\n  );\n};\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e🎨 Design System\u003c/b\u003e\u003c/summary\u003e\n\n### Color Palette\n```css\n:root {\n  --primary-50: #fefce8;\n  --primary-100: #fef9c3;\n  --primary-200: #fef08a;\n  --primary-300: #fde047;\n  --primary-400: #facc15; /* Primary Brand Color */\n  --primary-500: #eab308;\n  --primary-600: #ca8a04;\n  --primary-700: #a16207;\n  --primary-800: #854d0e;\n  --primary-900: #713f12;\n  --primary-950: #422006;\n}\n```\n\n### Typography Scale\n```css\n.text-scale {\n  --text-xs: 0.75rem;    /* 12px */\n  --text-sm: 0.875rem;   /* 14px */\n  --text-base: 1rem;     /* 16px */\n  --text-lg: 1.125rem;   /* 18px */\n  --text-xl: 1.25rem;    /* 20px */\n  --text-2xl: 1.5rem;    /* 24px */\n  --text-3xl: 1.875rem;  /* 30px */\n  --text-4xl: 2.25rem;   /* 36px */\n}\n```\n\n\u003c/details\u003e\n\n---\n\n## 🔐 Security Features\n\n\u003cdiv align=\"center\"\u003e\n\n### 🛡️ Multi-Layer Security Implementation\n\n| Security Layer | Technology | Purpose |\n|---------------|------------|---------|\n| 🔑 **Authentication** | JWT + BCrypt | Secure user login and password hashing |\n| 🛡️ **Authorization** | Role-based Access Control | Resource protection by user roles |\n| 🚫 **CORS Protection** | Spring Security | Cross-origin request validation |\n| 🔒 **Input Validation** | Bean Validation + Sanitization | Prevent injection attacks |\n| ⚡ **Rate Limiting** | Custom Filter | API abuse prevention |\n\n\u003c/div\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e🔑 Authentication \u0026 Authorization\u003c/b\u003e\u003c/summary\u003e\n\n### JWT Token Structure\n```typescript\ninterface JWTPayload {\n  sub: string;          // User ID\n  email: string;        // User email\n  role: 'APPLICANT' | 'EMPLOYER' | 'ADMIN';\n  iat: number;          // Issued at\n  exp: number;          // Expiration time\n  authorities: string[]; // User permissions\n}\n```\n\n### Role-Based Access Control\n```typescript\n// Route Protection Example\nconst ProtectedRoute: React.FC\u003c{\n  children: React.ReactNode;\n  allowedRoles: string[];\n}\u003e = ({ children, allowedRoles }) =\u003e {\n  const user = useSelector((state: any) =\u003e state.user);\n  \n  if (!user || !allowedRoles.includes(user.role)) {\n    return \u003cNavigate to=\"/unauthorized\" /\u003e;\n  }\n  \n  return \u003c\u003e{children}\u003c/\u003e;\n};\n```\n\n\u003c/details\u003e\n\n---\n\n## 🌐 Deployment\n\n\u003cdiv align=\"center\"\u003e\n\n### 🚀 Live Deployment Status\n\n| Service | Platform | Status | URL |\n|---------|----------|--------|-----|\n| 🎨 **Frontend** | Vercel | ✅ Live | [careerconnect-platform.vercel.app](https://careerconnect-platform.vercel.app) |\n| ⚙️ **Backend** | Render | ✅ Live | [careerconnect-platform.onrender.com](https://careerconnect-platform.onrender.com) |\n| 🗄️ **Database** | MongoDB Atlas | ✅ Connected | Cloud Hosted |\n\n\u003c/div\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003e☁️ Cloud Deployment\u003c/b\u003e\u003c/summary\u003e\n\n### Vercel (Frontend)\n```json\n{\n  \"name\": \"careerconnect-frontend\",\n  \"version\": 2,\n  \"builds\": [\n    {\n      \"src\": \"package.json\",\n      \"use\": \"@vercel/static-build\",\n      \"config\": {\n        \"buildCommand\": \"npm run build\",\n        \"outputDirectory\": \"build\"\n      }\n    }\n  ],\n  \"routes\": [\n    {\n      \"src\": \"/(.*)\",\n      \"dest\": \"/index.html\"\n    }\n  ],\n  \"env\": {\n    \"REACT_APP_API_URL\": \"@api_url\",\n    \"REACT_APP_ENVIRONMENT\": \"production\"\n  }\n}\n```\n\n### Render (Backend)\n```yaml\n# render.yaml\nservices:\n  - type: web\n    name: careerconnect-backend\n    env: java\n    buildCommand: ./mvnw clean install -DskipTests\n    startCommand: java -jar target/*.jar\n    envVars:\n      - key: SPRING_PROFILES_ACTIVE\n        value: prod\n      - key: MONGODB_URI\n        fromDatabase:\n          name: careerconnect-db\n          property: connectionString\n    healthCheckPath: /api/actuator/health\n```\n\n\u003c/details\u003e\n\n---\n\n## 👥 Contributing\n\n\u003cdiv align=\"center\"\u003e\n\n\n\n\u003c/div\u003e\n\n### 🔄 Development Workflow\n\n1. **Fork \u0026 Clone** the repository\n2. **Create** a feature branch: `git checkout -b feature/amazing-feature`\n3. **Commit** your changes: `git commit -m 'Add amazing feature'`\n4. **Push** to branch: `git push origin feature/amazing-feature`\n5. **Submit** a Pull Request\n\n### 📋 Development Guidelines\n\n- Follow TypeScript/Java coding standards\n- Write comprehensive tests\n- Update documentation for new features\n- Ensure responsive design compatibility\n- Follow conventional commit messages\n\n---\n\n## 📄 License\n\n\u003cdiv align=\"center\"\u003e\n\n### 📋 MIT License\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=for-the-badge)](https://opensource.org/licenses/MIT)\n\n**Free to use, modify, and distribute with attribution**\n\n\u003c/div\u003e\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\n## 🚀 Ready to Get Started?\n\n### 🔗 Quick Links\n\n[![Live Demo](https://img.shields.io/badge/🌐_Live_Demo-Visit_Application-blue?style=for-the-badge\u0026logo=vercel)](https://careerconnect-platform.vercel.app)\n[![API Docs](https://img.shields.io/badge/📊_API_Docs-View_Documentation-green?style=for-the-badge\u0026logo=swagger)](https://careerconnect-platform.onrender.com/api/actuator/health)\n[![GitHub](https://img.shields.io/badge/⭐_GitHub-Star_Repository-black?style=for-the-badge\u0026logo=github)](https://github.com/Anuj-er/careerconnect-platform)\n\n### ⭐ Found this project helpful? \n\n**Give us a star on GitHub to show your support!**\n\n[![GitHub stars](https://img.shields.io/github/stars/Anuj-er/careerconnect-platform?style=social)](https://github.com/Anuj-er/careerconnect-platform/stargazers)\n[![GitHub forks](https://img.shields.io/github/forks/Anuj-er/careerconnect-platform?style=social)](https://github.com/Anuj-er/careerconnect-platform/network/members)\n\n---\n\n### 🎯 Project Stats\n\n![GitHub repo size](https://img.shields.io/github/repo-size/Anuj-er/careerconnect-platform?style=flat-square)\n![GitHub language count](https://img.shields.io/github/languages/count/Anuj-er/careerconnect-platform?style=flat-square)\n![GitHub top language](https://img.shields.io/github/languages/top/Anuj-er/careerconnect-platform?style=flat-square)\n![GitHub last commit](https://img.shields.io/github/last-commit/Anuj-er/careerconnect-platform?style=flat-square)\n\n---\n\n\n\n*Connecting dreams with opportunities, one click at a time.*\n\n\u003c/div\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanuj-er%2Fcareerconnect-platform","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanuj-er%2Fcareerconnect-platform","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanuj-er%2Fcareerconnect-platform/lists"}