{"id":13619478,"url":"https://github.com/teknologi-umum/gitgram","last_synced_at":"2025-10-14T08:50:41.395Z","repository":{"id":39412999,"uuid":"440066302","full_name":"teknologi-umum/gitgram","owner":"teknologi-umum","description":"Github notifications for Telegram","archived":false,"fork":false,"pushed_at":"2025-03-31T05:11:45.000Z","size":992,"stargazers_count":1,"open_issues_count":5,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-31T06:22:36.103Z","etag":null,"topics":["bot","telegram","telegram-bot","webhook"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/teknologi-umum.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","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},"funding":{"github":"teknologi-umum","custom":["https://saweria.co/teknologiumum"]}},"created_at":"2021-12-20T06:32:51.000Z","updated_at":"2025-03-31T05:11:49.000Z","dependencies_parsed_at":"2024-01-17T04:03:36.606Z","dependency_job_id":"672a68a4-198e-4401-9b91-f4334a1a92a4","html_url":"https://github.com/teknologi-umum/gitgram","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teknologi-umum%2Fgitgram","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teknologi-umum%2Fgitgram/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teknologi-umum%2Fgitgram/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teknologi-umum%2Fgitgram/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/teknologi-umum","download_url":"https://codeload.github.com/teknologi-umum/gitgram/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248916655,"owners_count":21182846,"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":["bot","telegram","telegram-bot","webhook"],"created_at":"2024-08-01T21:00:41.515Z","updated_at":"2025-10-14T08:50:31.363Z","avatar_url":"https://github.com/teknologi-umum.png","language":"TypeScript","funding_links":["https://github.com/sponsors/teknologi-umum","https://saweria.co/teknologiumum"],"categories":["G"],"sub_categories":[],"readme":"\u003ckbd\u003e\n\n![logo.png](./logo.png)\n\n\u003c/kbd\u003e\n\n# Gitgram\n\nGitHub notifications for Telegram\n\n## Backstory\n\nGitgram was created because our team at that time was working on a big project, and we use Telegram to discuss the\nproject. We needed something to receive Github webhook notifications and send them to the Telegram group to ease our\ncommunication without having to check directly on Github. Therefore, a bot was created.\n\n## Features\n\nIt sends every notification to the group within these events:\n\n- deployment status\n- issue\n- issue comment\n- ping\n- pull request\n- pull request reviews\n- release\n- vulnerability alerts\n\n## Usage\n\n### From official Docker image\n\nThe easiest setup would be pulling from the official Docker image.\n\n```sh\ndocker run \\\n  -e WEBHOOK_SECRET=\"your-webhook-secret\" \\\n  -e BOT_TOKEN=\"your-bot-token\" \\\n  -e HOME_GROUP=\"your-home-group\" \\\n  -e IGNORE_PRIVATE_REPOSITORY=false \\\n  -p 3000:3000 \\\n  ghcr.io/teknologi-umum/gitgram:edge\n```\n\nAnother example of running Gitgram through Docker Compose is available on our\n[infrastructure repository](https://github.com/teknologi-umum/infrastructure/blob/master/gitgram/docker-compose.yml).\n\n### From Docker\n\nIf you don't trust the official Docker image, you can always build the image yourself.\n\n```sh\ngit clone https://github.com/teknologi-umum/gitgram.git\ncd gitgram\ndocker build -t gitgram:latest .\ndocker run -d -p 3000:3000 --name gitgram gitgram:latest\n```\n\nDon't forget to supply your own environment variables.\n\n### From source\n\nFirst you will need to clone this repo\n\n```sh\ngit clone https://github.com/teknologi-umum/gitgram.git\n```\n\nand then install all of its dependencies\n\n```bash\npnpm install\n```\n\nTo make the bot work properly, you will need these environment variables.\n\n- `NODE_ENV`\n  Used for NodeJS to determine whether the bot is running in production or development.\n- `PORT`\n  Which port to run the HTTP server.\n- `WEBHOOK_SECRET`\n  Your webhook secret. You should see it when you create your Github webhook.\n- `BOT_TOKEN`\n  Your telegram bot token.\n- `DEV_PROXY_URL`\n  Webhook proxy URL used for easier development process.\n- `HOME_GROUP` (Optional)\n  Default group if the repository was not found on the mapping.\n- `IGNORE_PRIVATE_REPOSITORY` (Optional)\n  Set to anything other than empty to make it ignore every notification from private repository.\n\nExample:\n\n```ini\nNODE_ENV=development\nPORT=3000\nWEBHOOK_SECRET=123456789\nBOT_TOKEN=xyzx:isyelacuapwodncnmzdcmajwo\nDEV_PROXY_URL=web.com/duffUGHIUGsdsd\n```\n\nIf you don't know how to make a Telegram bot and get its token, you can refer\nto [Telegram Bot Documentation](https://core.telegram.org/bots)\n\nIf you don't know how to make a webhook for Github, you can visit\n[GitHub Webhook Documentation](https://docs.github.com/en/developers/webhooks-and-events/webhooks/about-webhooks)\n\nBuild the bot with `pnpm run build`\n\nThen run the bot with `pnpm run start`\n\n## License\n\n```\nGitgram is a bot send Github notifications to Telegram.\nCopyright (C) 2021-present  Teknologi Umum Gitgram contributors\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program.  If not, see \u003chttps://www.gnu.org/licenses/\u003e.\n```\n\nSee [full license](./LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteknologi-umum%2Fgitgram","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fteknologi-umum%2Fgitgram","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteknologi-umum%2Fgitgram/lists"}