Skip to content

Latest commit

 

History

History
161 lines (116 loc) · 4.46 KB

README.md

File metadata and controls

161 lines (116 loc) · 4.46 KB

GitHub README Auto Update

Automatically updates your GitHub profile README.md with your latest repositories, activities, and details. This tool fetches data from your GitHub account using the GitHub API and synchronizes it to your profile.


How It Works

  • Fetches your public repositories, including their names, descriptions, languages, and last updated dates.
  • Compares the current README.md content with your remote GitHub profile.
  • Updates the profile README.md if there are any changes.
  • Pushes the updated README.md to your GitHub repository.

Example Output

Here's an example of the output generated for a GitHub profile:

Hi, I'm SyntaxSkater 👋

Welcome to my GitHub profile! Here's a snapshot of my public repositories:

github-readme-auto-update

Description: Automatically updates my Github profile README so I don't have to.

Languages: Python

Last Updated: 2024-12-31

View Repository


SyntaxSkater

Description: Config files for my GitHub profile you see at https://github.com/SyntaxSkater

Languages: No languages detected

Last Updated: 2024-12-31

View Repository


How to Use

Prerequisites

Python Installed: Ensure you have Python 3.8 or higher installed on your machine. GitHub Token: Create a GitHub Personal Access Token with the following permissions: repo (for accessing private repositories, if needed) user (to fetch profile data) Steps to Set Up Clone the Repository:

git clone https://github.com/SyntaxSkater/github-readme-auto-update.git
cd github-readme-auto-update

Install Dependencies: Install the required Python libraries using pip:

pip install -r requirements.txt

Set Up Your GitHub Token: Add your GitHub token as an environment variable:

On Windows:

setx GITHUB_TOKEN "your_github_token_here"

On macOS/Linux:

export GITHUB_TOKEN="your_github_token_here"

Customize the Script:

Update the GITHUB_USERNAME in update_readme.py to your GitHub username:

GITHUB_USERNAME = "YourGitHubUsername"

Run the Script:

Execute the script to generate and push your profile README.md:

python update_readme.py

Advanced Customization

If you want to customize the output or modify how the script works, you can edit the following sections in update_readme.py:

Profile Content:

Modify the generate_readme_content function to customize how your profile's README.md is structured.

Repository Filters:

Update the get_github_activity function to filter repositories by specific criteria (e.g., visibility, topics, etc.).


Future Features

This project is continuously evolving! Here’s what’s planned for future updates:

- 🌟 Highlighting Top Projects

Automatically display your most important repositories based on: Number of stars Forks Last updated date A custom priority list.

- 📊 Dynamic Stats Section

Include GitHub profile stats like: Total stars across all repositories. Total forks. Total contributions over the past year. Most used programming languages.

- ⭐ Featured Repositories

Allow you to mark specific repositories as "featured" to always display at the top of your profile README.

- 📝 Profile Bio Integration

Fetch and display additional details from your GitHub profile, such as: Location Bio Hireable status.

- 📈 Contribution Graph

Display a visual graph of your contributions over time to highlight your activity.

- 🏷️ Repository Badges

Add informative badges for each repository, such as: Build status License type Number of stars and forks.

- 🔖 Repository Topics and Tags

Include tags or topics (e.g., "AI," "Full-Stack," "Python") to make repositories easily searchable and better categorized.

- 👀 Profile Visits Counter

Show a dynamic counter that tracks the number of profile visitors.

- 🔗 Social Links

Add links to your other online profiles, such as: LinkedIn Twitter Personal website or portfolio.


How to Contribute

If you’re interested in contributing to these features or have ideas for new ones:

1. Fork this repository.
2. Work on the feature in a separate branch.
3. Submit a pull request with your changes.
4. Let’s make GitHub profile management even more powerful and customizable together! 🚀

License

This project is licensed under the MIT License - see the LICENSE file for details.