GithubHelp home page GithubHelp logo

job-evaluator-chrome-extension's Introduction

Job Evaluator - Helps You Process Job Descriptions 10X Faster

Background

As job seekers, we often find ourselves wasting a lot of time reading into jobs descriptions that do not fit our skills/interests. We created Job Evaluator, a Chrome Extension that evaluates job descriptions for users, to let users see the “suitability score” for a job description before they start reading it -- evaluated based on how many of the user’s skills and interests match with the job description.

Functionality:

  • Access the trendy skills api to get an up-to-date list of tech skills to be searched for in job descriptions

  • Provide the user with an input field to search and select skills compiled from the api

    • allow manually inputted skills that may not be on the list
  • Scan a job description’s webpage for the skills from the api’s skill list and user inputted skills

  • generate a score based on the matches and similarities of the user’s selected skills and the actual number of skills written in the job description.

  • list out the relevant, related, and irrelevant skills they have compared to the job description.

  • provide the ability to create an account so users can save the jobs they are interested in and have a list of skills shared by their saved job descriptions in order to efficiently gain skills to increase their chances of getting their preferred jobs.

MVP List:

End of Weekend

  • Finish proposal and have it posted on the github repository’s README.md
  • Individually finish the tutorial for chrome extension creation

MVP 1 (Day1):

  • Able to get user input technical skills
  • Able to search through the page to find and count number of appearances of keywords
  • Able to display score on Icon/pop-up menu/or on top of webpage.

MVP 2 (Day2):

  • setup express backend
  • Able to get list of trending skills from API call
  • Able to highlight keywords by group on the webpage.
  • Able to add multiple category of skills

MVP 3 (Day 3&4):

  • Able to identify the job's title for storing into backend
  • Able to store all the viewed job-postings into local storage
  • Able to display history of jobs viewed in a separate webpage (with react)
  • More complex searches

MVP 4 (Day5&6):

  • Enable Linkedin login
  • store user data into mongoDB

Code snippet

async

chrome.storage.sync.get( ['jobScannerSwitch','allSkills','userSkills'], (result) => { jobScannerSwitch = result.jobScannerSwitch || false; allSkills = result.allSkills || []; userSkills = result.userSkills || [];

   if(!jobScannerSwitch){
     document.body.innerHTML = originalHTML;
     return;
   }

... )

Sort the skills list by length before searching, to avoid counting "ruby" in "ruby on rails"

  1. go through html char by char
  2. for each skill, check the phrase of equal length after char to find match
  3. if one skill matches, then it does not check the rest of the skills (the skill list is sorted from longer skills to shorter skills)

Receiving commands from popup

chrome.runtime.onMessage.addListener( (request, sender, sendResponse)=>{ let something;

 switch(request.command){
   case "findAllSkills":
     findAllSkills();
     break;
   default:
     console.log('invalid request command');
     break;
 }

} );

popup window gets info from chrome's local storage

chrome.storage.sync.get( ['jobScannerSwitch','userSkills'], (result) => { jobScannerSwitch = result.jobScannerSwitch || false; userSkills = result.userSkills || []; setSkillsHTML(); } );

job-evaluator-chrome-extension's People

Contributors

akeatk avatar gty3310 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

job-evaluator-chrome-extension's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.