scrum-gang / jobhub-chrome

:pushpin: Extension to keep track of job applications ad-hoc
GNU General Public License v3.0
8 stars 0 forks source link
chrome-extension react reasonml

JobHub Google Chrome Extension

:pushpin: Keep track of job applications ad-hoc

Build Status

Login Popup Job Posting Form
Login Popup Job Posting Form

How to setup the project

Please check our contributors guide.

Why use the JobHub Extension

The Chrome extension is meant to be an ad-hoc access to the JobHub services. When the users are on a job application website, they don't need to stop browsing the post in order to open the JobHub website on a separate tab. Instead, they can start tracking the given application via the popup submit directly on the job posting website.

Folder Structure

.
├── .github # contains Code of Conduct & templates for PR/Issues
├── build   # generated by Webpack. Contains the final js/html/css/resources
├── data    # list of companies to scrape
├── lib     # generated by Bucklescript. ReasonML -> Javascript
├── src     # ReasonReact components & global stylesheet
├── .editorconfig       # linter
├── .travis.yml         # CI
├── bsconfig.json       # Bucklescript config
├── jsconfig.json       # VSCode intellisense for Chrome API
├── manifest.json       # Chrome Extension config
├── package.json        # Node config
├── popup.html          # html of the extension
└── webpack.config.js   # Webpack config

Architecture

           popup.html
               |
             App.re
             {token}
               |
   +-----------+-----------+
   |                       |
Login.re               JobApp.re
                           |
                   ScrapingInputs.re

token is the state variable which is initially obtained by Login during the authentication process and in subsequent execustions of the extension its validity is confirmed by App directly. The variable is passed onto the JobApp component to be able to submit job applications.

The system leverages the following modules

Limitations