Telegram Archive Roadmap

August 15, 2026 · View on GitHub

This document outlines planned features and the long-term vision for Telegram Archive.

For version history and changes, see CHANGELOG.md.


Near-term Improvements

Security Hardening

  • Search input validation and length limits
  • Telegram session file encryption at rest
  • Docker HEALTHCHECK instructions in Dockerfiles

Notification System

  • Detect when user has blocked notifications at OS/browser level
  • Auto-disable push subscriptions for blocked users (avoid wasted resources)
  • Notification preferences per chat (mute specific chats)

Mass Operation Protection

  • True zero-footprint mode: buffer ALL operations before applying
  • Configurable suspicious activity alerts (email/webhook)
  • Undo window for deletions (soft-delete with recovery period)

Viewer Polish

  • Media Gallery Phase 1+2 (grid view for photos/videos, list view for voice/files) — v7.10.0
  • Media Gallery Phase 3: Links tab (shared URLs extracted from messages)
  • Custom themes (light mode, OLED dark, Telegram classic)
  • Waveform visualization in the voice/audio player
  • Keyboard shortcuts (j/k navigation, Esc to close, etc.)
  • Message deep links (shareable URLs to specific messages)
  • i18n / localization (viewer is English-only currently)

Developer Experience

  • OpenAPI/Swagger documentation (FastAPI built-in, needs enabling for public use)
  • Grafana/Prometheus metrics endpoint (backup health, message counts, media size)
  • Database vacuum/optimization scheduled task (SQLite VACUUM, PostgreSQL ANALYZE)
  • Backup integrity verification (checksum media files against DB records)

Search & Discovery

Substring search over chat names and message text already ships. What is left is the indexed and semantic work, which is not scheduled against a version yet.

  • Elasticsearch or Meilisearch integration for full-text search across all messages
  • Semantic search (find by meaning, not just keywords)
  • Advanced filters: date range, media type, sender, has:link, has:media

Goal: Make Telegram Archive valid evidence in judicial systems worldwide.

Cryptographic Integrity

  • SHA-256 hash chains for all messages
  • Merkle tree root calculation per backup run
  • RFC 3161 Trusted Timestamping Authority integration
  • Blockchain anchoring (Bitcoin/Ethereum) for immutable proof
  • Tamper detection on archive verification

Chain of Custody

  • Immutable, hash-chained audit log
  • Every action logged: backup, view, export, access attempts
  • Multi-signature access for sensitive archives
  • Role separation: archivist vs viewer permissions
  • "Break glass" emergency access with mandatory logging

Source Authentication

  • Store Telegram server-side signatures with messages
  • Device attestation (TPM/Secure Enclave where available)
  • Cross-reference verification between independent archives

Court-Ready Export

  • Forensic export package format:
    evidence_package/
    ├── messages.json           # The actual messages
    ├── merkle_tree.json        # Full hash tree
    ├── tsa_timestamps/         # RFC 3161 timestamp tokens
    ├── blockchain_anchors/     # Transaction hashes
    ├── audit_log.json          # Hash-chained access log
    ├── telegram_signatures/    # Original Telegram auth data
    ├── device_attestation.json # Device proof
    └── verification_script.py  # Self-contained verifier
    
  • Verification CLI tool: telegram-archive verify evidence_package/
  • Legal template library (affidavits per jurisdiction)

Standards Compliance

  • ISO 27037 (Digital evidence handling)
  • NIST SP 800-86 (Forensic techniques guide)
  • eIDAS (EU qualified timestamps/signatures)
  • Federal Rules of Evidence 901/902 (US)

Configuration

FORENSIC_MODE=true
HASH_ALGORITHM=SHA-256
TSA_URL=https://freetsa.org/tsr
BLOCKCHAIN_ANCHOR=ethereum
AUDIT_LOG_RETENTION=forever

v9.0.0 — Multi-tenancy & Access Control

Multi-tenant Architecture

  • Single instance serving multiple users
  • Per-user isolated databases or schemas
  • Shared channel access between users

Authentication Providers

  • OAuth/Social login (Google, GitHub, Discord)
  • Magic link authentication (passwordless email)
  • OIDC/SAML support (Enterprise SSO)
  • 2FA/MFA support

Role-Based Permissions

  • Archivist: backup operations, no deletion

Future Ideas

Backup Features

  • Multi-account support (backup multiple Telegram accounts)
  • S3/MinIO cloud storage backend
  • End-to-end encryption at rest
  • Incremental backup compression
  • Backup scheduling presets (conservative, aggressive)
  • Telegram bot integration (trigger backup, get status via Telegram)

Export & Integrations

  • REST API for external integrations
  • Webhooks for new message notifications
  • Export formats: HTML archive, PDF, MBOX
  • Scheduled backup reports (email/Slack)
  • Import from other backup formats

Mobile Experience

  • Mobile-optimized gesture navigation
  • Offline viewing capability (service worker cache)
  • iOS/Android native app wrapper

AI Features

  • Chat summarization
  • Auto-tagging and categorization
  • Sentiment analysis dashboard
  • Translation on-demand

Recently Completed

Features that were previously on this roadmap and have been implemented:

FeatureVersionNotes
Message reactions displayv5.xEmoji + custom emoji support
Sticker displayv5.xRendered in message view
Web Push notificationsv5.0Full mode with VAPID, persistent subscriptions
WebSocket real-time updatesv5.0Live message sync, edits, deletions
Mass operation rate limitingv5.0Sliding window with configurable threshold
PWA supportv5.0Service worker, installable
Pinned messagesv5.4Multiple pins, real-time sync, banner
Forum topicsv6.2.0Topic navigation and filtering
Chat foldersv6.2.0Telegram dialog filters
Archived chatsv6.2.0Separate archived section
Dependabot + CodeQLv6.2.3Automated dependency updates and SAST
Ruff linter/formatterv6.2.3CI enforcement + pre-commit hooks
Security hardeningv6.2.3CSP, CORS, secure cookies, container hardening
PBKDF2 auth tokensv6.2.4Replaced weak SHA256 hashing
Login rate limitingv7.0.0Sliding window on the login and share-token endpoints
Session tokens with expirationv7.0.0Random per-login tokens honoring AUTH_SESSION_DAYS; DB-backed and restart-safe since v7.1.0
Admin panel for user managementv7.0.0Create, edit and delete viewer accounts from the viewer
Per-chat access control listsv7.0.0Per-account chat whitelists, enforced on messages and media
Read-only access to assigned chatsv7.0.0Viewer accounts see only their chats; writes stay with the master account
Voice/audio playerv7.31.0One global player with a queue and auto-advance; waveform display is still open

Contributing

Have a feature request? Open an issue!

See CONTRIBUTING.md for development guidelines.