A Telegram bot that automatically updates group chat titles with countdown and creates visual progress banners.
- Daily countdown updates: Automatically updates group chat title with days remaining
- Visual progress banner: Creates a progress image showing completion percentage
- Customizable schedule: Runs daily at midnight UTC+8 (configurable via cron)
- Manual trigger: Can be triggered manually via GitHub Actions workflow dispatch
The bot calculates progress between a start date and target date, then:
- Updates the group chat title with remaining days
- Creates a visual banner by splitting an image based on progress percentage
- Updates the group chat photo with the progress banner
- Click "Use this template" at the top right
- Add a banner image named
banner.jpg
to the repository root - Configure the following GitHub secrets:
TELEGRAM_BOT_TOKEN
: Bot token from @BotFatherTELEGRAM_CHAT_ID
: Chat ID of the target group chatTELEGRAM_START_DATE
: Start date in formatYYYY-MM-DD
(UTC)TELEGRAM_TARGET_DATE
: Target date in formatYYYY-MM-DD
(UTC)
- Add the bot to your group chat and make it an admin
- Customize the chat title format in
convert-and-upload.sh
if needed
- Schedule: Edit the cron expression in
.github/workflows/countdown.yml
to change when updates occur - Title format: Modify the
TITLE
variable inconvert-and-upload.sh
- Image processing: Adjust ImageMagick commands in the script for different visual effects
This project is made by Elvis Mao, licensed under the Do What The Fuck You Want To Public License - see the LICENSE file for details.