{"id":22850021,"url":"https://github.com/sahilkumar0001/jobsphere","last_synced_at":"2026-04-11T06:05:20.058Z","repository":{"id":266061022,"uuid":"897243939","full_name":"sahilkumar0001/JobSphere","owner":"sahilkumar0001","description":"Connecting Job Seekers and Employers","archived":false,"fork":false,"pushed_at":"2024-12-06T10:49:17.000Z","size":5346,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-06T10:53:18.089Z","etag":null,"topics":["java","mysql","react-router","reactjs","spring-boot","spring-security"],"latest_commit_sha":null,"homepage":"","language":"Java","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/sahilkumar0001.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}},"created_at":"2024-12-02T09:45:59.000Z","updated_at":"2024-12-06T10:49:20.000Z","dependencies_parsed_at":"2025-02-06T10:42:59.012Z","dependency_job_id":"c0b7fab8-f004-4cbb-95e1-b1c47b429c31","html_url":"https://github.com/sahilkumar0001/JobSphere","commit_stats":null,"previous_names":["sahilkumar0001/jobsphere"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sahilkumar0001%2FJobSphere","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sahilkumar0001%2FJobSphere/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sahilkumar0001%2FJobSphere/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sahilkumar0001%2FJobSphere/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sahilkumar0001","download_url":"https://codeload.github.com/sahilkumar0001/JobSphere/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246426901,"owners_count":20775466,"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","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":["java","mysql","react-router","reactjs","spring-boot","spring-security"],"created_at":"2024-12-13T05:06:09.404Z","updated_at":"2025-12-30T23:15:17.801Z","avatar_url":"https://github.com/sahilkumar0001.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# 🌟 Job Portal System  \n\n_A full-stack web application designed to connect job seekers (employees) with job providers (employers)._  \n\n---\n\n## 📋 Features  \n\n### For Employees:  \n- 🔍 View available job postings.    \n- 📊 Track application status.  \n\n### For Employers:  \n- ✏️ Post job openings.  \n- 👀 View applications for posted jobs.  \n- ⚙️ Update application status (e.g., Pending, Approved, Rejected).  \n\n---\n\n## 🛠 Tech Stack  \n\n**Frontend:**  \n- React.js  \n- Bootstrap  \n\n**Backend:**  \n- Spring Boot  \n- RESTful APIs  \n\n**Database:**  \n- MySQL  \n\n---\n\n## 🌐 System Architecture  \n\nThe system follows a **3-tier architecture**:  \n\n1. **Frontend (Client-Side):**  \n   - React handles the user interface.  \n   - Communicates with the backend via APIs.  \n\n2. **Backend (Server-Side):**  \n   - Spring Boot manages business logic and data processing.  \n\n3. **Database:**  \n   - MySQL stores user, job, and application data.  \n\n---\n\n## 📊 Database Schema  \n\n### Employee Table  \n\n| Column     | Type      | Description                |  \n|------------|-----------|----------------------------|  \n| `id`       | INT       | Primary Key                |  \n| `name`     | VARCHAR   | User's full name           |  \n| `email`    | VARCHAR   | User's email address       |  \n| `password` | VARCHAR   | Hashed password            |  \n| `role`     | VARCHAR   | Role (Employee/Employer)   |  \n\n### Employer Table  \n\n| Column     | Type      | Description                |  \n|------------|-----------|----------------------------|  \n| `id`       | INT       | Primary Key                |  \n| `companyName`     | VARCHAR   | User's full name           |  \n| `email`    | VARCHAR   | User's email address       |  \n| `password` | VARCHAR   | Hashed password            |  \n| `role`     | VARCHAR   | Role (Employee/Employer)   | \n\n### Jobs Table  \n\n| Column        | Type      | Description                |  \n|---------------|-----------|----------------------------|  \n| `id`          | INT       | Primary Key                |  \n| `title`       | VARCHAR   | Job title                  |  \n| `description` | TEXT      | Job description            |  \n| `location`    | VARCHAR   | Job location               |  \n| `salary`      | DECIMAL   | Job salary                 |  \n| `employer_id` | INT       | Foreign Key to Users Table |  \n\n### Applications Table  \n\n| Column         | Type      | Description                |  \n|-----------------|-----------|----------------------------|  \n| `id`           | INT       | Primary Key                |  \n| `job_id`       | INT       | Foreign Key to Jobs Table  |  \n| `employee_id`  | INT       | Foreign Key to Users Table |  \n| `resume`       | TEXT      | Base64 string of the resume|  \n| `status`       | ENUM      | Status of application      |  \n\n---\n\n## 🔑 Authentication Process  \n\n- **Login:**  \n  Users log in via Spring Security with Basic Authentication.  \n\n- **Role-Based Access Control:**  \n  - `ROLE_EMPLOYEE`: Access to view jobs and apply.  \n  - `ROLE_EMPLOYER`: Access to post jobs and manage applications.  \n\n---\n\n## 🚀 How to Run  \n\n### Backend Setup:  \n1. Clone the repository:  \n   ```bash  \n   git clone \u003crepository-url\u003e  \n   cd JobSphere  \n   ```  \n\n2. Configure the database in `application.properties`:  \n   ```properties  \n   spring.datasource.url=jdbc:mysql://localhost:3306/job_portal  \n   spring.datasource.username=your_username  \n   spring.datasource.password=your_password  \n   ```  \n\n3. Start the backend server:  \n   ```bash  \n   ./mvnw spring-boot:run  \n   ```  \n\n### Frontend Setup:  \n1. Navigate to the frontend folder:  \n   ```bash  \n   cd frontend  \n   ```  \n\n2. Install dependencies:  \n   ```bash  \n   npm install  \n   ```  \n\n3. Start the frontend server:  \n   ```bash  \n   npm run dev  \n   ```  \n\n4. Open your browser at `http://localhost:5173`.  \n \n\n---\n\n## 🛑 Challenges Faced  \n\n1. **CORS Errors:**  \n   - Solved by proper Spring Security and React configurations.  \n\n2. **Role-Based Access:**  \n   - Implemented using Spring Security and frontend route guards.  \n\n\n---\n\n## 🔮 Future Enhancements  \n\n- 🌟 Advanced job filters (e.g., location, salary range).  \n- 🌟 Notifications for application updates (email or in-app).  \n- 🌟 Integration with third-party cloud services (e.g., AWS, Google Drive).\n- 🌟 Integrate real time chat and video conference\n\n---\n\n## 🤝 Contributing  \n\nContributions are welcome! Follow these steps:  \n1. Fork the repository.  \n2. Create a new branch:  \n   ```bash  \n   git checkout -b feature-name  \n   ```  \n3. Commit and push your changes:  \n   ```bash  \n   git push origin feature-name  \n   ```  \n4. Submit a pull request for review.  \n\n---\n\n\n## 📞 Contact  \n\n- **Developer:** Sahil Kumar  \n- **Email:** sahil.sk6862@gmail.com  \n- **GitHub:** [sahilkumar0001](https://github.com/sahilkumar0001)  \n- **LinkedIn:** [Sahil Kumar](https://linkedin.com/in/sahilkumar-code)  \n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsahilkumar0001%2Fjobsphere","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsahilkumar0001%2Fjobsphere","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsahilkumar0001%2Fjobsphere/lists"}