Skip to main content

Simple CLI tool to fetch random starred repositories from a users GitHub profile.

Project description

⭐️ GitHub Random Star ⭐️

PyPI - Python Version

If you have starred way too many GitHub repositories and need a way of keeping track of them. This simple CLI tool throws you quasi random starred repos at you to look at and explore.

If you are struggling with selection paralysis; it also allows for selecting random repositories from a GitHub user.

Installation

Install with Pipx or Pip.

pipx install github-random-star

Install with GitHub CLI.

gh extension install ddkasa/gh-random-star

Usage

  • Setup GitHub API token as the GITHUB_TOKEN environment variable. If this is not setup it will use the public access point with lower rates.

PyPi

  • Run the script through gh-star <command> <account> <flags>.
  • Run gh-star help star to get help.

GitHub CLI

  • Run the script through gh random-star <command> <account> <flags>.
  • Run gh random-star help star to get help.

Commands

  1. star Randomly select from all starred items of a GH user.
  2. repo Randomly select from a GH users repositories.

Arguments

  • <account> Username of the GitHub account to retrieve the starred items from. Required

Flags

  • -t, --total Total amount of random items you want to pick from. Defaults to 3.
  • -r, --refresh Whether to fetch new cached data or not. Will re fetch all starred items instead of using cache.
  • --max-history The amount of historic choices to cache. Defaults to 100. Set to -1 to keep history unlimited. GH_STAR_MAX_HISTORY environment variable can be used to override this value.
  • -i, --ignore If to use a list of repositories to ignore. Defaults to true.
  • --max_results The amount of starred items to retrieve from GitHub. Defaults to all.

Examples

PyPI
  • gh-star star ddkasa
  • gh-star repo ddkasa
  • gh-star star ddkasa -t 5
  • gh-star star ddkasa -r -t 5
GitHub CLI
  • gh random-star star ddkasa
  • gh random-star repo ddkasa

Contributing

Development is run through Poetry.

Basic Setup

  1. git clone https://github.com/ddkasa/github-random-star
  2. cd github-random-star
  3. poetry shell
  4. poetry install
  5. poetry run gh-star
  • Lint with ruff check toggl_api
  • Check typing with mypy toggl_api

Testing

  • Use pytest for all tests
  • Use pytest -m unit for unit tests
  • Use pytest -m integration for integration tests
  • Test all supported python versions through tox

License

MIT. Look at the LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

github_random_star-1.2.0.tar.gz (9.9 kB view details)

Uploaded Source

Built Distribution

github_random_star-1.2.0-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

Details for the file github_random_star-1.2.0.tar.gz.

File metadata

  • Download URL: github_random_star-1.2.0.tar.gz
  • Upload date:
  • Size: 9.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.12.1 Linux/6.5.0-1025-azure

File hashes

Hashes for github_random_star-1.2.0.tar.gz
Algorithm Hash digest
SHA256 ad382790fbc117fa1636b6898aa6b6c729050105867b1ce68af99f0b8125553d
MD5 796048dafede2c37f67acb48b29a070b
BLAKE2b-256 82ba4215b9a9704e09d40b6a2faa6b6ef4357969896dec13c4b8034c27e81139

See more details on using hashes here.

File details

Details for the file github_random_star-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: github_random_star-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 11.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.12.1 Linux/6.5.0-1025-azure

File hashes

Hashes for github_random_star-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f7d830ea9fe1e1b0ffdc4a925c3351e6ec54ab556f16f4d3cdf0b14cc556b5eb
MD5 b81b1861d4bc831c86019f101d11c862
BLAKE2b-256 dbb910f9adcb5b6cde11d278a1d9fa9d8912ec6b07d1d1c1f864af804db3b20d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page