{"id":19134643,"url":"https://github.com/eikendev/cheergo","last_synced_at":"2026-02-16T14:13:32.683Z","repository":{"id":65197204,"uuid":"439846503","full_name":"eikendev/cheergo","owner":"eikendev","description":"Receive notifications when your repository is starred, watched, or forked","archived":false,"fork":false,"pushed_at":"2023-04-01T15:17:08.000Z","size":69,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-03T12:23:27.138Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eikendev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-12-19T11:33:39.000Z","updated_at":"2023-04-16T15:53:15.000Z","dependencies_parsed_at":"2024-06-21T08:52:21.738Z","dependency_job_id":null,"html_url":"https://github.com/eikendev/cheergo","commit_stats":{"total_commits":5,"total_committers":1,"mean_commits":5.0,"dds":0.0,"last_synced_commit":"539c2552927f90619b7f85b043a88c2fb7d4c855"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eikendev%2Fcheergo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eikendev%2Fcheergo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eikendev%2Fcheergo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eikendev%2Fcheergo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eikendev","download_url":"https://codeload.github.com/eikendev/cheergo/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240214610,"owners_count":19766263,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-09T06:27:36.111Z","updated_at":"2026-02-16T14:13:32.666Z","avatar_url":"https://github.com/eikendev.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\t\u003ch1\u003eCheergo\u003c/h1\u003e\n\t\u003ch4 align=\"center\"\u003e\n\t\tStay in the loop when your projects get noticed.\n\t\u003c/h4\u003e\n\t\u003cp\u003e\n\t\t\u003cstrong\u003eCheergo\u003c/strong\u003e notifies you when your GitHub repositories are starred or followed, so you never miss a moment of recognition.\n\t\u003c/p\u003e\n\u003c/div\u003e\n\n\u003cp align=\"center\"\u003e\n\t\u003ca href=\"https://github.com/eikendev/cheergo/actions\"\u003e\u003cimg alt=\"Build status\" src=\"https://img.shields.io/github/actions/workflow/status/eikendev/cheergo/release.yaml?branch=main\"/\u003e\u003c/a\u003e\u0026nbsp;\n\t\u003ca href=\"https://github.com/eikendev/cheergo/blob/main/LICENSE\"\u003e\u003cimg alt=\"License\" src=\"https://img.shields.io/github/license/eikendev/cheergo\"/\u003e\u003c/a\u003e\u0026nbsp;\n\u003c/p\u003e\n\n## ✨ Why Cheergo?\n\nEver wondered who’s cheering for your open source work? **Cheergo** keeps you connected to your community by sending you notifications whenever someone stars or follows your repositories. Whether you’re a solo dev or part of a team, Cheergo helps you celebrate every milestone.\n\n## 🚀 Features\n\n- **Flexible delivery**: Send alerts to email, Telegram, Slack, Discord, and more (powered by [Shoutrrr](https://containrrr.dev/shoutrrr/latest/services/overview/))\n- **Smart summaries**: Get concise, AI-generated notifications with OpenAI/OpenRouter (optional)\n- **Easy setup**: Configure via CLI flags or environment variables\n\n## 🛠️ How It Works\n\n1. **Cheergo** checks your GitHub account for new stars and followers.\n2. It compares the latest state with your previous data (stored locally in a YAML file).\n3. When it detects something new, it crafts a notification, optionally using an LLM for a smart summary.\n4. The message is sent to your chosen channel via Shoutrrr.\n\n## 📦 Installation\n\n**Recommended:** Download the latest binary from the [releases page](https://github.com/eikendev/cheergo/releases).\n\n**Or build from source:**\n```bash\ngo install github.com/eikendev/cheergo/cmd/...@latest\n```\n\n## ⚡ Quick Start\n\n1. **Set up your notification channel** (see [Shoutrrr docs](https://containrrr.dev/shoutrrr/latest/services/overview/) for supported services).\n\n2. **Run cheergo** with your GitHub username and Shoutrrr URL:\n\n```bash\ncheergo run --github-user YOUR_GITHUB_USERNAME --shoutrrr-url YOUR_SHOUTRRR_URL\n```\n\n3. To enable **AI-powered summaries**, add your OpenAI/OpenRouter API key:\n\n```bash\ncheergo run --github-user ... --shoutrrr-url ... --llm-api-key YOUR_API_KEY\n```\n\n_All options can also be set via environment variables (see below)._\n\n## ⚙️ Configuration\n\n| Option            | CLI Flag             | Env Variable              | Default                | Description                                 |\n|-------------------|---------------------|---------------------------|------------------------|---------------------------------------------|\n| Storage file      | `--storage`         | `CHEERGO_STORAGE`         | `storage.yml`          | Path to local storage file                  |\n| Shoutrrr URL      | `--shoutrrr-url`    | `CHEERGO_SHOUTRRR_URL`    | *(required)*           | Notification channel URL                    |\n| GitHub user       | `--github-user`     | `CHEERGO_GITHUB_USER`     | *(required)*           | GitHub username to monitor                  |\n| LLM API key       | `--llm-api-key`     | `CHEERGO_LLM_API_KEY`     | *(optional)*           | OpenAI/OpenRouter API key for summaries     |\n| LLM base URL      | `--llm-base-url`    | `CHEERGO_LLM_BASE_URL`    | `https://openrouter.ai/api/v1` | LLM API endpoint                |\n| LLM model         | `--llm-model`       | `CHEERGO_LLM_MODEL`       | `google/gemini-2.5-flash-lite-preview-06-17` | LLM model to use         |\n| Verbose logging   | `--verbose`         | `CHEERGO_VERBOSE`         | `false`                | Enable debug logging                        |\n\n## 🔔 Supported Notification Channels\n\nCheergo uses [Shoutrrr](https://containrrr.dev/shoutrrr/latest/services/overview/) for notifications, supporting:\n\n- Email (SMTP)\n- Telegram\n- Slack\n- Discord\n- Microsoft Teams\n- Matrix\n- Rocket.Chat\n- ...and many more!\n\nJust provide the appropriate Shoutrrr URL for your service.\n\n## 🧩 Libraries Used\n\n- [`kong`](https://github.com/alecthomas/kong) – CLI parsing\n- [`shoutrrr`](https://github.com/containrrr/shoutrrr) – Multi-channel notifications\n- [`go-github`](https://github.com/google/go-github) – GitHub API\n- [`go-openai`](https://github.com/sashabaranov/go-openai) – LLM integration (optional)\n- [`yaml.v3`](https://pkg.go.dev/gopkg.in/yaml.v3) – YAML config/state\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feikendev%2Fcheergo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feikendev%2Fcheergo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feikendev%2Fcheergo/lists"}