finds.dev← search

// the find

knadh/tg-archive

★ 1,177 · Python · MIT · updated Mar 2026

A tool for exporting Telegram group chats into static websites like mailing list archives.

tg-archive syncs a Telegram group's message history into a local SQLite DB via Telethon, then renders it into a static, mailing-list-archive-style website with year/month/day navigation. It's for community or project maintainers who want their Telegram group's history to be publicly browsable and indexable outside the app.

Incremental sync only pulls new messages since last run, so re-syncing large groups doesn't mean re-downloading everything. The output is a plain static site (deep-linkable threads, reply chains resolved across pages, RSS/Atom feed) so hosting is trivial and content is crawlable. It handles the annoying details properly: avatar caching, media download, poll rendering, and emoji substitutes for stickers rather than skipping them.

It authenticates as a real Telegram user account, not a bot, which means running this continuously on a cron job risks the account hitting rate limits or getting flagged, and the resulting session.session file is a live credential the README explicitly warns you not to leak. The author has explicitly stepped back from active development, so it's in PR-review-only mode. There's no test suite in the tree despite sync.py and build.py doing real state management (SQLite writes, resumable sync) that's exactly the kind of code that benefits from tests. Customization means hand-editing the generated template.html and static assets directly, no theming layer.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →