Package: gitsuggest
A tool to suggest github repositories based on the repositories you have shown
interest in.Whats happening here?Programs must be written for people to read, and only incidentally for machines to execute. ~ Hal AbelsonOne quick way to become a better programmer is by reading code written by smart
people. Github makes finding such code/repositories easy. At the end of the day
we all are interested in our own specific areas and we express this interest by
“starring” repositories and/or “following” people who contribute to such
repositories.This is a tool which uses the repositories you have starred and the repositories
that people you follow have starred to help you discover repositories which
might be of interest to you.How fast is it?It totally depends on the number of repositories you have, and people you follow
have starred. Based on this number it might take anywhere between a minute to
two minutes to give you the list of suggested repositories.SetupUsing pippipinstallgitsuggestDirectly from the repositorygitclone--recursivehttps://github.com/csurfer/gitsuggest.gitpythongitsuggest/setup.pyinstallPost setupIf you see a stopwords error, it means that you do not have the corpusstopwordsdownloaded from NLTK. You can download it using command below.python-c"import nltk; nltk.download('stopwords')"UsageAs a command# For help with usagegitsuggest--help# With just username in command to provide password secretlygitsuggest<username># Password can be skipped which means you chose to go the unauthenticated
# way which may raise RateLimitExceeded exception. To skip password enter
# nothing when prompted for password and press enter.# NOTE: Using it this way generates a static html page with the search
# results. This gets opened it in your default browser.# To fetch better suggestions at the cost of extra time and callsgitsuggest<username>--deep_dive# Without the --deep_dive flag we limit the suggestion to consider only
# the repositories you have starred. With --deep_dive we also consider
# repositories which people you follow have starred.As a modulefromgitsuggestimportGitSuggest# To use with username password combinationgs=GitSuggest(username=<username>,password=<password>)# To use with access_tokengs=GitSuggest(token=access_token)# To use without authenticatinggs=GitSuggest(username=<username>)# To use with deep dive flaggs=GitSuggest(username=<username>,password=<password>,token=None,deep_dive=True)gs=GitSuggest(token=access_token,deep_dive=True)gs=GitSuggest(username=<username>,deep_dive=True)# To get an iterator over suggested repositories.gs.get_suggested_repositories()FAQWhy do we need to authenticate (with password) to get suggestions, I browse
gihub all the time without authenticating?You don’t. Fromv0.0.4you can choose to procure suggestions without actually
authenticating with a password, but know thataccess to github through API is
highly rate limitedand it is much lesser for unauthenticated requests when
compared to authenticated ones. More details aboutratelimits.What this means is that when used without a password (unauthenticated) it may
fail withRateLimitExceededexception.ContributingBug Reports and Feature RequestsPlease useissue trackerfor reporting bugs or feature requests.DevelopmentPull requests are most welcome.Buy the developer a cup of coffee!If you found the utility helpful you can buy me a cup of coffee using