gitmyhub

sola-bot

Go ★ 22 updated 6h ago

Open-source Telegram operations platform with Go + Vue, including bot, admin panel, points, moderation, scheduled posts, and lottery.

Sola is an all-in-one platform for running Telegram group communities, combining a moderation bot, web admin panel, scheduled posts, a points/lottery system, and a Mini App into one deployable package.

GoPostgreSQLRedisVue 3Docker ComposeNginxTelegram Bot APIOpenAI APIsetup: hardcomplexity 4/5

Sola is an open-source platform for running Telegram group communities. It goes well beyond a simple command bot: it combines a live Telegram bot, a web-based admin panel, a background task worker, and a Telegram Mini App into a single deployable system. The target audience is anyone building a long-term Telegram product who needs user management, moderation tools, and operational data in one place rather than patching together separate scripts.

The bot itself handles a full set of group administration tasks: banning and muting users, managing welcome messages, running join verification challenges, filtering keywords and links, and tracking violations with an audit trail. It also connects to an OpenAI-compatible API for a second-pass AI check on suspected spam messages. On top of moderation, it runs a points system where members earn scores for participation, with cooldown periods to prevent gaming, leaderboards, and configurable rules per group.

The scheduled posting module lets admins create one-time or recurring posts that go out automatically, with optional auto-delete and automatic disabling if a post fails repeatedly. There is also a lottery module where members can enter by clicking a button or submitting a code word, and winners are drawn automatically at a set time.

The web admin panel covers all of the above through a browser interface: group settings, user management, points configuration, violation records, post scheduling, and lottery management. There is also a backup and restore feature for configuration data. The Mini App provides a lighter in-Telegram interface for the same functions.

The backend is written in Go using PostgreSQL and Redis. The frontend uses Vue 3. Everything runs via Docker Compose with Nginx in front. The README notes the project is suitable as a base for customization and that some areas, particularly the Mini App and multi-bot lifecycle management, are still early.

Where it fits