Skip to content

nikhil25803/gitMeBackend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Backend of the project GitMe

A GitHub repository recommendation system.


Tech Stack 🖥️

Python NodeJS Express.js AWS

About

This repository is the backend of the project GitMe, which is a GitHub repository recommendation system based on the concept of content-based filtering.

Collected 18,000+ repositories, filtered the repo which does have at least one open issue, and Pandas to create a data frame, sort it according to the language entered by the user and filter out them on different parameters like star count, issues open, pull requests and contributors.

Deployed the script on AWS Lambda, add required python packages as a layer, and triggered it using API Gateway by AWS.

Tested the deployed link using Node and ExpressJS, passing different query parameters to get desired output.


Want to access? 🧐

GET : https://f1p3gk74yh.execute-api.us-west-2.amazonaws.com/recommend?language={}&sortby={}

The invoke URL accepts two query parameters, the first is language=, which asks you the language of which you wants to get the repositories and the second is sortby= which sort the result accordingly.

Example :

GET / https://f1p3gk74yh.execute-api.us-west-2.amazonaws.com/recommend?language=Rust&sortby=stars_count

Output :

[
    {
        "repositories": "ralexstokes/ethereum-consensus",
        "stars_count": "41",
        "forks_count": "11",
        "issues_count": "21",
        "pull_requests": "0",
        "contributors": "7"
    },
    {
        "repositories": "defuse/DAWr",
        "stars_count": "19",
        "forks_count": "0",
        "issues_count": "10",
        "pull_requests": "0",
        "contributors": "0"
    },

    ...
]

This will return you the data of repositories with Python as the language used and the output will be sorted by the stars_count


AWS Architecture 💫

image


About

Backend of project GitMe : A GitHub repository content based recommendation system.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published