Jobflow is a project designed to streamline and enhance the job application process, inspired by personal experiences in tracking my internship applications. Traditional tools like Spreadsheets and Notepads were not to my liking since they lack the visual representation and intuitive workflow management.
Spreadsheets have a tabular format which is cumbersome for tracking multiple applications, while Notepad lacks organizational structure. Jobflow's Kanban board simplifies tracking with drag-and-drop functionality, allowing users to move applications across stages like "interested," "applied," "rounds/interviews," and "heard back."
Customizable boards cater to users' specific needs, whether for internships, jobs, or other opportunities. There is no limit to the number of boards - whether you are using it for a Winter Internship or to Apply for a job next summer. Users can also manage comprehensive details within the platform, including job titles, descriptions, links, and scheduling for rounds.
Moreover, Jobflow integrates desktop notifications for scheduled rounds to ensure users stay informed. Built with the MERN Stack, Jobflow combines modern web technologies' flexibility with intuitive visual task management. With Jobflow, the job search process becomes efficient and enjoyable, empowering users to stay organized and focused on their career goals. With this application, users can easily organize and track their job applications, ensuring a streamlined and efficient job search process.
- Frontend - Reactjs,HTML,CSS
- Backend - Nodejs,Expressjs,Mongodb
It contains the information about the application
Registeration and Login using password which is hashed using bcrypt library and stored in the database
Created using react-beautiful-dnd you can move your application to the respective column based on its status
Create a new board when you begin your search .Double click and view your previous boards.
5) Add new job/internship applications with details ,link. - Use + button to add and double click to edit the details
Click the + button to add a new job to the respective column and furthur edit it by double clicking on it
Use the calender to remember important dates and times
Move it to be the respective column
8) Set Desktop Notifications so you dont miss any round! Also add notes - mentioning what it is along with the actual scheduled time
Click on the button at the top right if you wish to recieve notificatons for that particular board
- Search and filter applications
- Using this application through Telegram
- Project can be furthur enhanced by helping users with their resumes by having a resume creator
- Using NLP to analyse how sutiable the resume is for the JD
- Web Scrapping for finding relevant jobs as per our interest
- Filling all details necessary for job which can be entered in any online job application using the Chrome Extension
- Bot on the website to help with general advise related to jobs/internships
- Maybe Admin posting jobs manually or through some other means?
Navigate to the project directory:
cd backend
Install dependencies using npm:
npm install
To start the Dimensioning Backend in development mode, execute the following command:
npm run dev
Navigate to the project directory:
cd Frontendd
Install dependencies using npm:
npm install
To start the Frontend:
npm run start
MVC Architecture Followed
- Model
- Encapsulates the Application State
- Business Logic - Because it defines the rules for how the data can be stored , modified , created
- Database - Structure Defined
- From Controller - CRUD Operations are performed by interacting with it
- From View - Notifies Updates (NS)
- Controller
- Maps User Actions to model updates
- Selects Views - Indirectly
- HTTP request processing
- Application Specific Logic
- Data Validation
- View
- Renders Model
- Sends User Events to the controller
- Requests Model Updates
- Dynamic Page Generation
- Form Management