CamiloGarciaLaRotta / tack

:pushpin: Chrome Extension to keep track of applications ad-hoc

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tack Google Chrome Extension

πŸ“Œ Keep track of job applications ad-hoc Build Status Coverage Status

Why use the Tack Extension

The Chrome extension is meant to be an ad-hoc way to track any type of application you want to or have already applied. When the users are on a websitew with a posting, they don't need to stop browsing in order to open a tracker service on a separate tab. Instead, they can start tracking the given application via the popup form directly on the posting website.

This Chrome Extension is the fork of a school project regarding a broader service to track applications. The fork intends to remove dependencies on external web APIs, simplyfying the use cases and making the extension self contained.

You can find more information on the use cases this fork attempts to address, as well as insights into the design process in the Design Thinking write-up.

This project is a fork of an the JobHub job application tracker.

How to setup the project

Please check our contributors guide.

Folder Structure

.
β”œβ”€β”€ build   # generated by Webpack. Contains the final js/html/css/resources
β”œβ”€β”€ 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
               |
            JobApp.re
               |
        ScrapingInputs.re

The system leverages the following modules

  • ScrapingFunctions.re: functions related to extracting/processing HTML elements
  • Services.re: functions related to asynchronous actions
  • SyncStorage.re: functions related to the Chrome storage management
  • Uilities.re: general purpose helper functions

About

:pushpin: Chrome Extension to keep track of applications ad-hoc

License:GNU General Public License v3.0


Languages

Language:OCaml 78.9%Language:CSS 17.6%Language:JavaScript 1.8%Language:C++ 0.9%Language:HTML 0.8%