Generate custom Telegram Desktop themes from any image. Upload a photo, wallpaper, or artwork, and get a perfectly colour-matched .attheme file for Telegram Desktop.
- 🎨 Automatic Colour Extraction – Extracts dominant colours from your images
- 👁️ Live Preview – See how your theme looks before downloading
- ✨ Contrast Optimization – Ensures readable text with proper contrast ratios
- 📱 One-Click Download – Export ready-to-use
.atthemefiles - 🖼️ Sample Images – Try with built-in images for inspiration
- 🔒 100% Private – All processing is local, no uploads or tracking
- Node.js 18+
- npm or yarn
# Clone the repository
git clone https://github.com/Hypovolemic/telegram-theme-generator.git
cd telegram-theme-generator
# Install dependencies
npm install
# Start development server
npm run dev| Script | Description |
|---|---|
npm run dev |
Start development server |
npm run build |
Build for production |
npm run preview |
Preview production build |
npm run test |
Run tests |
npm run test:coverage |
Run tests with coverage |
npm run lint |
Run ESLint |
npm run format |
Format code with Prettier |
- Open the app in your browser or run locally.
- Upload an image using the upload button or try a sample image.
- Preview your theme in the live Telegram chat preview.
- Download your
.atthemefile and import it in Telegram Desktop.
For a detailed guide, see User Guide.
- React 19 – UI framework
- TypeScript – Type safety
- Vite – Build tool
- Tailwind CSS – Styling
- Vitest – Testing
See Architecture Documentation for more details.
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
- Theme looks odd? Try a different image or adjust the crop.
- File won’t import? Make sure you’re using Telegram Desktop and importing a
.atthemefile. - Preview not updating? Refresh the page or clear your browser cache.
See User Guide for more help.
- Some images may produce low-contrast themes; try another image for best results.
- Only Telegram Desktop
.atthemefiles are supported (not Android/iOS). - Large images may take longer to process in-browser.
MIT. See LICENSE.

