Skip to content

Hugo-Rodrigues-Dev/job-application-tracking-spreadsheet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

97 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Job Application Tracker

A React web application for tracking job applications, organizing target companies, prioritizing preferred roles, and monitoring progress through dashboards.

The main project is located in the job-tracker folder.

Main Features

  • Job application tracking with search, filters, pagination, and statuses.
  • Analytics dashboard with charts.
  • Company management by category.
  • Preferred role ranking by priority.
  • Excel import and export.
  • French and English interface.
  • Light/dark theme.
  • Local persistence by default through localStorage.

Tech Stack

  • React 19
  • Vite
  • Tailwind CSS
  • Recharts
  • Lucide React
  • XLSX

Requirements

Install the following tools before running the project:

  • Node.js 20.19.0 or newer, or Node.js 22.12.0 or newer
  • npm
  • Git

You can check your versions with:

node --version
npm --version
git --version

Installation

Clone the repository, then install the application dependencies:

git clone <repository-url>
cd job-application-tracking-spreadsheet/job-tracker
npm install

If you are working from a ZIP archive, open a terminal in the project folder, move into job-tracker, then run npm install.

Configuration

The project uses Vite environment variables. An example file is already available:

cp .env.example .env.local

Recommended configuration for running the application without a backend:

VITE_DATA_SOURCE=local
VITE_API_URL=http://localhost:8000

With VITE_DATA_SOURCE=local, data is stored in the browser's localStorage. This is the simplest mode for testing or using the application locally.

The api mode also exists, but it requires a backend compatible with the following routes:

  • GET /api/applications
  • GET /api/applications/:id
  • POST /api/applications
  • PUT /api/applications/:id
  • DELETE /api/applications/:id
  • PUT /api/applications
  • GET /api/company-categories
  • PUT /api/company-categories

In that case, configure:

VITE_DATA_SOURCE=api
VITE_API_URL=http://localhost:8000

Development

From the job-tracker folder, run:

npm run dev

Vite will print a local URL, usually:

http://localhost:5173

Open that URL in your browser.

Available Scripts

All commands below must be run from job-tracker.

npm run dev

Starts the Vite development server.

npm run build

Builds the production version into the dist folder.

npm run preview

Starts a local server to preview the production build.

npm run lint

Checks the code with ESLint.

npm run secrets:check

Scans for committed secrets with Gitleaks.

Data Persistence

In local mode, applications and company categories are saved in the browser under these localStorage keys:

  • job-tracker/applications
  • job-tracker/company-categories

Data remains available after a page reload, but it depends on the browser and user profile. To avoid losing data, regularly use the built-in Excel export.

Import and Export

The application can export applications to Excel and import a file later. This is useful for:

  • creating a local backup;
  • moving data to another browser;
  • restoring data after clearing localStorage.

Project Structure

job-application-tracking-spreadsheet/
├── README.md
├── TODO.md
└── job-tracker/
    ├── public/
    ├── src/
    │   ├── data/
    │   ├── features/jobApplications/
    │   ├── styles/
    │   └── utils/
    ├── package.json
    └── vite.config.js

Troubleshooting

If npm install fails, check your Node.js version, delete node_modules, then run the installation again.

If the page is blank or data does not load, make sure VITE_DATA_SOURCE=local is defined in .env.local.

If port 5173 is already in use, Vite will automatically suggest another port in the terminal.

If you use api mode, make sure the backend is running, VITE_API_URL points to the correct URL, and the server accepts requests with cookies if authentication is enabled.

License

This project is distributed under the MIT license. See LICENSE for more information.

About

Job Application Tracking Spreadsheet

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages