-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 71576d5
Showing
5 changed files
with
406 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
.DS_Store | ||
.env | ||
venv | ||
repo_category_mapping.json | ||
starred_repos.json |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
# GitHub Stars Organizer | ||
|
||
This project automatically organizes and categorizes starred GitHub repositories using the Anthropic Claude API. It updates a GitHub repository with categorized lists of starred repos and maintains an up-to-date README with statistics. | ||
|
||
## Features | ||
|
||
- Fetches starred repositories from GitHub | ||
- Categorizes repositories using Anthropic's Claude AI | ||
- Updates a GitHub repository with categorized lists | ||
- Maintains a README with current statistics | ||
- Handles addition of new starred repos and removal of unstarred ones | ||
|
||
## Requirements | ||
|
||
- Python 3.7+ | ||
- GitHub Personal Access Token | ||
- Anthropic API Key | ||
|
||
## Setup | ||
|
||
1. Clone this repository | ||
2. Install required packages: `pip install -r requirements.txt` | ||
3. Create a `.env` file in the project root with the following content: | ||
``` | ||
GITHUB_TOKEN=your_github_token | ||
ANTHROPIC_API_KEY=your_anthropic_api_key | ||
GITHUB_REPO=your_username/your_repo_name | ||
``` | ||
4. Create a `categories.json` file with your desired categories | ||
## Limitations | ||
If any modifications are made directly to the repository, the script will not repair or rebuild anything. If this happens, delete the `repo_category_mapping.json` and `starred_repos.json` files, and the script will rebuild everything from scratch. | ||
## Usage | ||
Run the script with: | ||
``` | ||
python stars.py | ||
``` | ||
Use the `--debug` flag for detailed logging: | ||
``` | ||
python stars.py --debug | ||
``` | ||
Modify the `categories.json` file to include any categories you wish to use. | ||
## Warning | ||
This script will consume a lot of tokens (since it uses Claude for categorization). You might want to consider running with a local LLM to avoid the cost. Use at your own discretion. | ||
## License | ||
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. | ||
## Transparency Disclaimer | ||
[ai.collaboratedwith.me](ai.collaboratedwith.me) in creating this project. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
{ | ||
"Development Tools": "Tools for software development, including code management, documentation, and deployment.", | ||
"Productivity Tools": "Applications and tools designed to enhance personal and professional productivity.", | ||
"Data Management": "Tools for managing, processing, and visualizing data.", | ||
"Security and Privacy": "Resources and tools for enhancing computer security and online privacy.", | ||
"AI and Machine Learning": "Frameworks, models, and tools related to artificial intelligence and machine learning.", | ||
"Web Development": "Libraries and tools for building and maintaining websites and web applications.", | ||
"Media Tools": "Applications for managing and editing various types of media like videos, images, and audio.", | ||
"System Management": "Tools for managing operating systems, virtualization, and remote access.", | ||
"File and Document Management": "Tools for organizing, converting, and securing files and documents.", | ||
"Networking and Communication": "Applications and tools for online communication and network management.", | ||
"Design and UX": "Tools related to user interface and user experience design.", | ||
"Browser and Extensions": "Web browsers and their extensions that enhance browsing experience.", | ||
"Natural Language Processing": "Libraries and tools for working with human language data.", | ||
"Financial Tools": "Applications for managing personal finances and financial data.", | ||
"Gaming and Entertainment": "Resources and tools related to gaming and digital entertainment.", | ||
"Educational Resources": "Learning materials and resources for various subjects, including AI.", | ||
"Cryptography and Blockchain": "Tools and libraries for encryption and blockchain development.", | ||
"Mobile Development": "Resources and tools for mobile application development and reverse engineering.", | ||
"Other": "Miscellaneous repos of interest." | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
PyGithub==1.55 | ||
anthropic==0.3.0 | ||
python-dotenv==0.19.0 |
Oops, something went wrong.