own-repos-curator
A TUI for editing and managing introductory descriptions for each repository, centered around a list of repositories. Written in Rust.
Status
- Currently dogfooding.
Usage
- For efficiently creating repository descriptions.
- *Targets your public repositories (excluding forks and archived repositories).
Features
- Visualization through grouping and tagging.
- Various others (might be explained in the details below).
Installation
Rust is required.
cargo install --force --git https://github.com/cat2151/own-repos-curator
Execution
repocurator
Update
repocurator update
Breaking Changes
- Occur frequently.
Explanation generated by Codex CLI:
What is this?
own-repos-curator is a TUI application designed to help you cultivate introductory descriptions for each of your public GitHub repositories, starting from your repository list.
It allows you to organize 1-line descriptions, 3-line descriptions, tags, and groups locally, based on factual information retrieved from GitHub, and save them as repos.json.
It’s not just a tool for viewing a list; it’s designed as a workspace for “preparing your public repositories to be presentable to others later.”
When is this useful?
- When your public repositories have grown, and it’s hard to keep track of what you’ve built.
- When GitHub descriptions alone aren’t enough, and you want to organize purposes and highlights separately.
- When you want to gather source material before writing descriptions for READMEs, portfolios, GitHub Pages, or dedicated showcase pages.
- When you were manually transcribing to spreadsheets or notes, but missing repository additions or updates became tiresome.
- When you want to quickly refine descriptions for multiple repositories using a keyboard-centric workflow, without constantly switching between browser tabs.
- When you want to organize “which repository belongs to which category” using tags and groups.
It is particularly suited for individuals who continuously cultivate their public repositories.
It helps reduce the situation where your creations get buried because their descriptions haven’t caught up.
What makes it unique compared to existing solutions?
1. Fills gaps where GitHub’s repository list or descriptions fall short.
While GitHub provides mechanisms for listing repositories and editing descriptions, it’s not optimized for the experience of comprehensively cultivating introductory texts across multiple repositories.
own-repos-curator synchronizes repository names, update times, and existing descriptions from GitHub, and then allows you to manage your “personal introductory data” on top of that.
In essence, its uniqueness lies not in abandoning GitHub, but in using GitHub as a source of factual data while maintaining the descriptive context in a separate layer.
2. More specialized for repository management than spreadsheets or Notion.
While you can manage repository introductions in spreadsheets or Notion, you need to manually import repository addition and update information.
This application allows you to perform repository list synchronization, description editing, tagging, group assignment, and filtering all within the same interface.
Its strength lies in its focus on the single goal of “keeping public repositories in a presentable state,” rather than offering the general flexibility of multi-purpose tools.
3. Not just text editing, but also preserving data as reusable JSON assets.
The introductory data is saved in repos.json.
This makes it easy to repurpose the data for future GitHub Pages, static sites, other tools, or generation scripts, ensuring it’s not locked within the application.
Furthermore, this repository allows you to copy the JSON to related local repositories, automatically push to a backup repository on startup (if configured), or manually commit/push from the TUI with Shift+P. This means it’s not just “create a description and you’re done,” but rather structured to easily cultivate it as a public asset.
4. A TUI designed for a large volume of small edits.
This application is better suited for quickly adding short descriptions and classifications to numerous repositories, rather than deeply editing a single repository.
Tag assignment, group assignment, filtering, and sorting are all keyboard-driven, making it ideal for an incremental approach to populating descriptions.
Past Challenges and How This Application Solves Them
Challenge 1. Repository list management quickly becomes manual.
Each time a new repository is created, transcribing it to an introductory note or list is tedious.
As a result, there’s a discrepancy between the repositories you want to showcase and those that are actually organized.
This application synchronizes the repository list from GitHub, eliminating the need to manually maintain it.
The first solution is that the “starting point for inventory” is automatically aligned.
Challenge 2. GitHub descriptions alone provide insufficient introductory information.
GitHub descriptions are brief, making it difficult to convey purpose, background, key highlights, or related categories.
On the other hand, putting everything in a README makes it harder to compare items in a list or review them comprehensively.
This application retains GitHub descriptions while allowing you to maintain separate 1-line descriptions and 3-line descriptions.
By separating “minimal GitHub explanations” from “supplementary introductory explanations,” you can better organize how your projects are presented.
Challenge 3. As repositories grow in number, they become harder to find without classification axes.
When the number of repositories increases, merely lacking organizing principles like “Is it CLI?”, “Is it Web?”, “Is it for learning?”, or “Is it for public use?” makes them harder to leverage.
This application supports tags and groups, allowing you to organize repositories into meaningful clusters.
Furthermore, designed with filtering and pagination in mind, it transforms a simple list into a discoverable one.
Challenge 4. Introductory data is scattered and difficult to reuse.
When descriptions are scattered across READMEs, notes, spreadsheets, and local JSON files, it becomes hard to tell which is the latest version.
Additionally, if you want to repurpose them for a different public channel, formatting costs are incurred every time.
This application consolidates introductory information into repos.json, centralizing the starting point for reuse.
This makes it easier to connect to future site generation or data publication, and to integrate into backup operations.
Challenge 5. Organizing descriptions tends to be postponed.
The task of opening each repository one by one in a browser to write descriptions is cumbersome, leading to descriptions often being put off.
This application is a TUI optimized for “quickly refining short descriptions while viewing a list,” thereby reducing the effort required for description maintenance.
As a result, it becomes easier to ensure that descriptions are kept up-to-date after a repository is created.
Summary
own-repos-curator is an application designed to transform your public repositories on GitHub from a “mere list of existing projects” into a “list ready to be showcased to others.”
Its uniqueness lies in integrating GitHub synchronization, description editing, tagging, grouping, and JSON asset creation into a single, unified workflow.
The role of this application is to streamline the previously manual and scattered process of managing repository introductions into a sustainable workflow.