Skip to content

⭐GitEmployed: Multiple Variable Linear Regression Tensorflow Star ⭐ Prediction with a SPA React Frontend powered by a NodeJS API ⭐ - SWENG

Notifications You must be signed in to change notification settings

CSIGildea/gitemployed

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitEmployed

Predict how many stars a github user should have based on the langauge they code in, the size of their repos, the quantity of followers and the quantity they are following.

Stars aren't going to be totally accurate, this isn't trying to enforce that.

It is an example of a metric that can be used to rank a set of people applying for a job, so that maybe if two people are of equal academic background, you would select the one who performs the best in comparison to the rest of the github community, rather than the one github non-active potential hire.

  • I do plan on hosting this soon, but with Christmas Exams and other matters before Christmas, it will probably be after Christmas when it gets deployed.

Homepage My Profile (note - no reload times due to it being an SPA :D) A random profile who performed badly Some Sample Predictions the Model Returned API that serves the React Frontend Fetch Request in Process - SPA in Action Also has clickable links to all your followers and who you are following (up to 100) so you can go through your followers/who you are following easily and see how popular their code is. About Page

Overall Opinions

  • Got to learn a lot more about React.
  • Built my first SPA(SPA is very slick).
  • Happy to get to do some Machine Learning with Tensorflow (even just a multiple variable linear regression model) at college.
  • Happy the models actually turned out fairly realistic.
  • Had to experience being at the mercy of github's api limits. Please read my about section in the above screenshot to see how I tried to repesent 31+ million repos, with a 1000 search results cap. I ended up having to totally ignore other github libraries and instead opt for specific requests that gave me greater control and were easier to use.
  • Need to refactor my user.js page :P
  • I also used inferential statistics for getting the sample of repositories for each language and also took into account appropriate star distribution. All this helped the quickly trained linear regression model become quite accurate for the amount of data and the timeframe.
  • Also happy the models didn't tell me I was a terrible programmer...or maybe I just didn't train it well enough so it couldn't :'( (Update - After making this repo public because it is so big the model now believes I am performing 15% worse than it expects me to be. This is due to the repo being newly made public and having no stars xD)

Awesome Resources that helped me build this:

React - Single Page Application Resources

Tensorflow Linear Regression Model

To Install

  • run the ./install.sh

  • After you have your virtual env ready to go with all modules, then just go to scraper folder, add your credentials to the credentials.py(enter either username and password OR personal access token).

  • Then run scraper.py(outputting the csv of the sample data), can also run linearregression.py afterwards to train a model and output the json.

  • Go the react folder. "npm i" to install all packages.

  • Edit the token.json file in the react folder and add in your personal access token for github.

  • Then just do "npm run dev"

  • Enjoy your github adventure (the models seem fairly alright, as long as you aren't a ruby developer...it looks like you have high expectations) Have fun, hope you enjoy!

About

⭐GitEmployed: Multiple Variable Linear Regression Tensorflow Star ⭐ Prediction with a SPA React Frontend powered by a NodeJS API ⭐ - SWENG

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages