A personal GitHub social management desktop application built in C# WinForms (.NET 10) using the official Octokit.net library. Built for power users who want full control over their GitHub social presence without touching the browser.
- Live follower and following counts
- API rate limit monitoring
- One-click token swap without restarting the app
- Side-by-side view of who doesn't follow you back vs who you haven't followed back yet
- Bulk follow and unfollow with throttled, rate-limit-safe execution
- Following Since column β see exactly how long you've been following someone
- Keep List β permanently protect accounts from ever appearing in your unfollow list
- Full operation log with cancel support
- Pull candidate followers from any target GitHub user
- Choose between their followers or who they follow as your candidate source
- Target Validation β preview any account before pulling with:
- Profile photo
- Follower / following counts
- Public repo count
- Follow ratio
- Account age
- Color-coded target quality assessment (Excellent / Good / Decent / Poor)
- Quality Filter β automatically skip accounts with too few repos or bot-like follow ratios
- Live streaming candidate queue β candidates appear as pages load, no waiting for full fetch
- Randomized interval timer between follows (configurable min/max in minutes)
- Daily cap with countdown to next follow action
- Export candidate queue and follow log to file
- Polls your followers on a configurable interval
- Automatically follows back anyone who followed you that you haven't followed yet
- Run Once Now button for immediate one-shot execution
- Full action log with timestamps
- All follows recorded to persistent follow tracker
- Scans your followers' public repositories
- Deduplicates against your existing starred repos
- Configurable minimum star threshold and follower scan count
- Cancel mid-scan β partial results still populate
- Select All + bulk star in one click
- Capped at top 100 repos per user to prevent slowdowns on large accounts
- Scans all your public repositories and checks for:
- β README present
- β Description set
- β Topics tagged
- β Homepage URL
- β Recent activity (flags repos with no pushes in 6+ months)
- Color-coded health rating per repo (Good / Okay / Poor)
- Quick Fix Topics β set topics on any repo directly from the app
- Open any repo in browser with one click
Checks your progress against all current GitHub achievements using the API:
| Achievement | Tiers | How Checked |
|---|---|---|
| π Starstruck | 16 / 128 / 512 / 4096 stars | Scans your repos |
| π¦ Pull Shark | 2 / 16 / 128 / 1024 merged PRs | Search API |
| β‘ Quickdraw | Close issue within 5 min | Events API |
| π₯ Pair Extraordinaire | 1 / 10 / 24 / 48 co-authored commits | Code search |
| π€ YOLO | Merge PR without review | Manual check |
| π§ Galaxy Brain | Accepted discussion answers | Manual check |
| π Public Sponsor | Sponsor a user | Manual check |
| π§ Arctic Code Vault | 2020 code snapshot | Account age check |
- Color-coded status (Unlocked / In Progress / Locked)
- How To Unlock popup with tier breakdown per achievement
- Direct links to relevant GitHub pages
- Embedded browser showing your live GitHub profile
- Auto-refresh timer (configurable down to 1 second)
- Live countdown to next refresh
- Refresh counter β see how many times it's refreshed since starting
- Open in default browser button
- Windows 10 or later
- .NET 10 Runtime
- Visual Studio 2022+ (for building from source)
- GitHub Personal Access Token (PAT)
This app requires a Classic Personal Access Token with the following scopes:
| Scope | Required For |
|---|---|
user:follow |
Follow / Unfollow operations |
public_repo |
Starring repositories |
read:user |
Profile and achievement data |
- Go to github.com/settings/tokens
- Click Generate new token (classic)
- Check:
user:follow,public_repo,read:user - Copy the token β you only see it once
β οΈ Fine-grained tokens handle starring differently. Classic tokens are recommended for full compatibility.
git clone https://github.com/YourUsername/GithubManager.git
cd GithubManager- Open
GithubManager.slnin Visual Studio 2022 - Right-click solution β Manage NuGet Packages
- Install:
OctokitSystem.Security.Cryptography.ProtectedData
- Build β Run (
F5) - Enter your PAT on first launch
- Check Remember Token to save it encrypted β you won't be prompted again
- Your token is never stored in plain text
- Encrypted using Windows DPAPI (
ProtectedData.Protect) tied to your Windows user account - Stored at
%AppData%\GithubManager\token.enc - Follow logs and keep lists stored locally at
%AppData%\GithubManager\ - Nothing is ever sent anywhere except the official GitHub API
GithubManager/
βββ Form1.cs β Main form code-behind (all tab handlers)
βββ Form1.Designer.cs β UI layout (7 tabs, fully code-generated)
βββ GitHubSocialManager.cs β Core GitHub API service layer
βββ FollowCrawler.cs β Randomized follow automation with timer
βββ AutoFollowBackService.cs β Polling service for auto follow-back
βββ AchievementChecker.cs β Achievement progress checker
βββ FollowTracker.cs β Persistent follow date log (JSON)
βββ KeepList.cs β Persistent keep list (JSON)
βββ TokenStorage.cs β DPAPI encrypted token storage
βββ Program.cs β Entry point
All persistent data is stored in %AppData%\GithubManager\:
| File | Contents |
|---|---|
token.enc |
DPAPI encrypted GitHub PAT |
follow_log_{username}.json |
Follow dates per user |
keep_list_{username}.json |
Protected accounts list |
This tool uses the official GitHub API with your own credentials for your own account. All operations are subject to GitHub's Terms of Service. The built-in rate limiting, daily caps, and randomized delays are designed to keep usage within acceptable bounds. Use responsibly.
- C# / .NET 10
- Windows Forms
- Octokit.net β Official GitHub API client
- System.Security.Cryptography.ProtectedData β DPAPI token encryption
- System.Text.Json β Local data persistence
MIT License β do whatever you want with it.