Interact with the testing version here
The purpose of this project is to streamline the job application process. From finding jobs, to extracting usefull information, to writing a cover letter and tailored resume.
The project features a frontend implementing the core features and a frontend for interactive UI.
To get a local copy up and running follow these simple example steps.
- npm
npm install npm@latest -g
-
Clone the repo
git clone https://github.com/rhudaj/JobTool.git
-
Navigate to the new directory
cd JobTool -
Run the setup script (installs all packages and links the shared package)
npm run setup
-
Create and fill a .env in the root directory:
PORT=<PORT> # example: 8080 API_KEY=<your openai API key>
-
Change git remote url to avoid accidental pushes to base project
git remote set-url origin github_username/repo_name git remote -v # confirm the changes -
Start MongoDB locally
# Start MongoDB with custom data directory and different port mongod --dbpath /path/to/your/custom/data --port 27018
To start the project, run the following command in the root directory:
npm run startThis will start the frontend and backend servers. The frontend will be available at localhost:3000 and the backend at localhost:<PORT>.
- Improve training for cover-letter & resume text generation.
- Deploy the frontend to a domain.
- Improve UI for keyword detection.
The repo is split into frontend, backend and a Shared folder.
The frontend is a React app that is served by the backend.
The backend is an Express.js server that serves the frontend and provides an API for the frontend to interact with.
The shared package contains code (specifically interfaces) that is used by both the frontend and the backend.
The frontend is located in the frontend directory. The frontend is split into components that are located in the src/components directory.
The backend is located in the backend directory. The backend is split into routes that are located in the src/routes directory. The backend serves the frontend and provides an API for the frontend to interact with.
Roman Hudaj - rhudaj@uwaterloo.ca
Project Link: https://github.com/rhudaj/JobTool