Skip to main content

Software Systems Laboratory GitHub Repository Searcher

A utility to perform advanced searching on GitHub using both the REST and GraphQL APIs

https://img.shields.io/badge/python-3.9.6%20%7C%203.10-blue https://img.shields.io/badge/DOI-Example-red https://img.shields.io/badge/build-Example-red https://img.shields.io/badge/license-BSD--3-yellow

Table of Contents

About

The Software Systems Laboratory (SSL) GitHub Repository Searcher is an installable Python project that utilizes both the GitHub REST and GraphQL APIs to allow for the advanced searching of repositories hosted on GitHub.

This project is licensed under the BSD-3-Clause. See the LICENSE for more information.

Developer Tooling

To maximize the utility of this project the following software packages are required:

Operating System

This tool targets Mac OS and Linux. SSL Metrics software is not supported or recommended to run on Windows but can be modified to do so at your own risk.

It is recomendded to run this tool on Mac OS or Linux. However, if you are on a Windows machine, you can use WSL to develop as well.

Python Software

The software listed in this section is meant for developing tools

All listed Python software assumes that you have downloaded and installed Python 3.9.6 or greater.

  • pandas
  • progress
  • requests

You can install all of the Python software with one of the following one-liners:

  • pip install --upgrade pandas pip progress requests
  • pip install --upgrade pip -r requirements.txt

How To Use

Installation

You can install the tool from PyPi with one of the following one liners:

  • pip install ssl-metrics-meta
  • pip install ssl-metrics-github-repository-searcher

Command Line Arguements

ssl-metrics-github-repository-searcher-search -h

options:
  -h, --help            show this help message and exit
  -r REPOSITORY, --repository REPOSITORY
                        A specific repository to be analyzed. Must be in format OWNER/REPO
  --topic TOPIC         Topic to scrape (up to) the top 1000 repositories from
  -o OUTPUT, --output OUTPUT
                        JSON file to dump data to
  -t TOKEN, --token TOKEN
                        GitHub personal access token
  --min-stars MIN_STARS
                        Minimum number of stars a repository must have
  --max-stars MAX_STARS
                        Maximum number of stars a repository must have
  --min-commits MIN_COMMITS
                        Minimum number of commits a repository must have
  --max-commits MAX_COMMITS
                        Maximum number of commits a repository must have
  --min-issues MIN_ISSUES
                        Minimum number of issues a repository must have
  --max-issues MAX_ISSUES
                        Maximum number of issues a repository must have
  --min-pull-requests MIN_PULL_REQUESTS
                        Minimum number of pull requests a repository must have
  --max-pull-requests MAX_PULL_REQUESTS
                        Maximum number of pull requests a repository must have
  --min-forks MIN_FORKS
                        Minimum number of forks a repository must have
  --max-forks MAX_FORKS
                        Maximum number of forks a repository must have
  --min-watchers MIN_WATCHERS
                        Minimum number of watchers a repository must have
  --max-watchers MAX_WATCHERS
                        Maximum number of watchers a repository must have
  --min-created-date MIN_CREATED_DATE
                        Minimum date of creation a repository must have
  --max-created-date MAX_CREATED_DATE
                        Maximum date of creation a repository must have
  --min-pushed-date MIN_PUSHED_DATE
                        Minimum date of the latest push a repository must have
  --max-pushed-date MAX_PUSHED_DATE
                        Maximum date of the latest push a repository must have

Metadata

Release files for ssl-metrics-github-repository-searcher 0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ssl-metrics-github-repository-searcher 0.1
File Size Uploaded Provenance Actions
ssl-metrics-github-repository-searcher-0.1.tar.gz 8.4 kB Without provenance Details for ssl-metrics-github-repository-searcher-0.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for ssl-metrics-github-repository-searcher 0.1
File Interpreter ABI Platform Actions
ssl_metrics_github_repository_searcher-0.1-py3-none-any.whl Python 3 none any Details for ssl_metrics_github_repository_searcher-0.1-py3-none-any.whl

Total release size: 16.5 kB

Release files / ssl-metrics-github-repository-searcher-0.1.tar.gz

Download URL ssl-metrics-github-repository-searcher-0.1.tar.gz
Size 8.4 kB
Tags Source
SHA-256 checksum
How to use checksums
4f102a0a4c61f760cb7678828b08d69df239cf2d82d0d8e97bcb7f4300a40b0e
BLAKE2b-256 checksum
How to use checksums
745b02c9279c2deefb70743b1b65c6b5a155b63bbf4d296abfaf2d7438dc4f7f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

Release files / ssl_metrics_github_repository_searcher-0.1-py3-none-any.whl

Download URL ssl_metrics_github_repository_searcher-0.1-py3-none-any.whl
Size 8.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c69d43dd181a720812b0c302c9c8f2fe34c0f13ceba4e61d46e17c3570b0f04d
BLAKE2b-256 checksum
How to use checksums
3daf7057a2949c1a171108661e1004a60230b1eb673a6e5829c06a85465a5627
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

Security for ssl-metrics-github-repository-searcher 0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page