Create an application to help find matching collaborators in github. Trough github crawling and relationship modelling. The user should be able to find and identify potential collaborators or projects related to a specific topic.
It is indeed very hard and time consuming to find people in github that match your interests or projects you like to work on. This project is trying to solve the following problems:
- Avoid redunancy in project creation and foster effort unification.
- Make it easy for developpers/entrepreneurs to build a team around the globe.
- Follow users that have similar interests.
-
- recommended dev env: Linux with node and Python3.7.
- Install Docker. get docker
- Install docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
-
- Back End:
- github archive crawler: crawls gharchive and feeds graph database.
in \crawl folderpython crawler.py start --spider=gharchive
- repos description and readme crawler:
in \crawl folderpython crawler.py start --spider=repos
- github archive crawler: crawls gharchive and feeds graph database.
- Database:
- neo4j deployement: in /backend folder
docker-compose up -d neo4j
- Nodes (Repos,Actor) Relationships Contribution
- neo4j deployement: in /backend folder
- Front End:
- deploy backend
docker-compose up -d datacrawler #deploy back end and crawl data
- run the js app locally
cd UI && npm run serve
- deploy backend
- Back End:
Github.com crawler using scrapy framework.
Database to model the relationships between contributors and repos. With an api to model it. The api would model it.
Main use case is to search repos and contributors by topic.
Finding projects/issues/contributors that would best match a certain topic/subject.
- Learn the right distance metric between repos. (From description, README.md)
- Learn the right distance metric between Actors(contributors) according to their contributions.
- This is just the beginning of something great!
- If you like the mission and can contribute in any form (code/issues/doc) please reach out.