Job Tracker is a simple, powerful, and user-friendly web application designed to help job seekers efficiently manage their job search process. Built with Ruby on Rails and enhanced with modern web technologies, this tool streamlines the often overwhelming task of tracking multiple job applications.
![UI Screenshot](https://private-user-images.githubusercontent.com/9040988/350463539-09f11ccf-e266-457f-bac6-f2b4183f1377.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjYwMDg3MzgsIm5iZiI6MTcyNjAwODQzOCwicGF0aCI6Ii85MDQwOTg4LzM1MDQ2MzUzOS0wOWYxMWNjZi1lMjY2LTQ1N2YtYmFjNi1mMmI0MTgzZjEzNzcucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDkxMCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA5MTBUMjI0NzE4WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9Y2U2OTU5MDFmMjMyNjNmNjk3YTdhZjFkNmMyZGYzZjVlYzIwZDAzODlmOTcyOTVmNjUxNjQ0N2FhZjlmNTEyZCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.3Urc0D8JRYZHZKaXAC4uYoM-rO26MZiAZ6GChgMKMNc)
- Intuitive Interface: Easy-to-use dashboard for quick overview of all job applications.
- Detailed Tracking: Record essential information for each application, including:
- Applied On Date
- Company Name
- Position Title
- Postion Type (Full-time, Part-time, Internship)
- Contact Method
- Point of Contact (P.o.C.)
- Website
- Status (No response, Interviewing, Job offer, Hired, Not hired)
- Location (Hybrid, Remote, In office)
- Dynamic Filtering: Quickly find specific applications using search and filter options.
- Real-time Updates: Leveraging Hotwire for seamless, dynamic content updates without full page reloads.
- Responsive Design: Fully functional on both desktop and mobile devices.
- Backend: Ruby on Rails 7
- Frontend:
- Tailwind CSS for styling
- Hotwire (Turbo and Stimulus) for dynamic interactions
- Vite for modern JavaScript bundling
- Database: PostgreSQL
You will need the following to run the application.
Refer here to install these dependencies
Run bin/setup
to set up the application. It prepares the database and installs the required ruby gems and javascript packages. The script is idempotent, so you can run it multiple times.
./bin/setup
Start Job Tracker
./bin/dev
This runs overmind or foreman using the Procfile.dev. It starts the rails server, solid queue background job process and vite server.
Visit http://localhost:3000
to see the home page 🚀.
To help you get started and test the application's features, I've included a seed file that generates 50 sample job applications. This data is designed to simulate a realistic job search scenario.
rails db:seed
Job Tracker supports docker and docker compose for local development. Install Docker and Docker desktop,
Once you have cloned the repository and have Docker installed, follow the following steps
- Run
docker compose build
to build. It will build the necessary images. - Run
docker-compose run --rm web bin/setup
to create and set up the database. - Run
docker compose up
to start the application. Since the local code from your host machine is mounted in the docker container, any change made locally will be directly reflected. You don't need to rebuild the container.
- Heroku
- Render
Running all tests
./bin/rails test:all
JobTracker is released under the MIT License.
Contributions Welcome: I'm open to contributions! If you'd like to help improve this project:
- Fork the repository
- Create a new branch for your feature or bug fix
- Make your changes and commit them with clear, descriptive messages
- Push your changes to your fork
- Create a pull request with a detailed description of your changes
I appreciate all contributions, big or small. Let's build something great together! 🚀
🚧 Note: This project is currently under active development and is very much a work in progress. Features may change.
This project was built upon the foundation provided by Shore, a Ruby on Rails template with a modern stack for starting new projects. I express my gratitude to the Shore project for providing an excellent starting point.
Shore is a Ruby on Rails template with modern stack to start your new project.
I highly recommend checking out the Shore project for anyone looking to kickstart their Ruby on Rails development with a modern, well-structured template.