Back to directory
maguowei avatar
maguowei / starred

starred

Create and maintain your own Awesome-style list from GitHub stars!

1,937

Stars

97

Forks

24

Watchers

MIT

License

Starred

CI Publish Python Package

English | 简体中文

Create and maintain your own Awesome-style list from GitHub stars.

Features

  • Generate a Markdown list from your starred repositories.
  • Group results by language (default) or repository topics.
  • Optionally sort categories alphabetically.
  • Write the generated file directly to a target GitHub repository.
  • Include private repositories with --private.

Installation

Requires Python 3.10+.

pip install starred

Quick Start

  1. Create a GitHub token: Personal access tokens
  2. Generate a README from your stars:
export GITHUB_TOKEN=<your-token>
starred --username <your-github-username> --sort > README.md

CLI Usage

starred --help

Common options:

  • --username: GitHub username (required)
  • --token: GitHub token (required)
  • --sort: Sort categories alphabetically
  • --topic: Group by topic instead of language
  • --topic_limit: Topic popularity threshold (default: 500)
  • --repository: Target repository name to update/create
  • --filename: Target file name in the repository (default: README.md)
  • --message: Commit message used when updating a file
  • --private: Include private repositories

Update a Repository Directly

This command creates the repository if it does not exist, then updates README.md in that repository.

export GITHUB_TOKEN=<your-token>
starred --username <your-github-username> --repository awesome-stars --sort

Example repository:

Use awesome-stars as a Template

The easiest setup is using maguowei/awesome-stars as your template repository. It includes a scheduled GitHub Actions workflow for automatic updates.

  1. Click Create a new repository from awesome-stars.

Use awesome-stars as template

  1. Configure workflow token permissions: Set GITHUB_TOKEN permissions

Set permissions to Read and write permissions, then click Save.

Workflow permissions

  1. Run the workflow once manually by clicking Run workflow.

Run workflow

  1. Customize the schedule in: .github/workflows/schedules.yml#L5

Schedule

Who Uses starred?

Development

uv sync --dev
uv run starred --help

Install from source tarball:

uv build
pip install dist/starred-<version>.tar.gz

Releases

Jan 14, 2023

release v4.3.0

Download .zip

use poetry build & publish, remove setup.py

May 6, 2022

release v4.0.2

Download .zip

Add flag to exclude private repositories #82

May 6, 2022

release v4.0.1

Download .zip

update description cut length