โ ThumbGen
โ โจ Generate beautiful thumbnails from videos, animations, images, and text โ all in your browser! ๐
- A modern, privacy-first thumbnail generation tool with zero server dependencies -
Powered by Canvas API and modern web technologies ใ
โ โจ Features
๐ฌ Video Thumbnail Generator - Extract perfect frames from MP4, WebM, and OGG videos
๐จ Lottie/TGS Thumbnail Generator - Generate thumbnails from Lottie animations and Telegram stickers
๐ Base64 Image Converter - Create tiny placeholders for progressive loading
โ๏ธ Text Thumbnail Generator - Design custom text-based thumbnails with fonts and backgrounds
๐ก๏ธ Watermark Tool - Add text or image watermarks with batch processing
๐ 100% Private - All processing happens in your browser, no data uploaded
๐ Zero Dependencies - No registration, no login, no tracking
๐ฑ Responsive Design - Works perfectly on desktop and mobile
๐ฏ Batch Processing - Process multiple files at once with ZIP export
๐ PWA Ready - Works offline after first visit
โ ๐ ๏ธ Tools Overview
โ Video Thumbnail Generator
Extract frames from video files with precise control:
Supported formats : MP4, WebM, OGG
Frame selection : Seekbar navigation with frame-by-frame control
Batch capture : Capture multiple frames and export as ZIP
Custom sizing : Adjustable output dimensions and quality
Perfect for : YouTube thumbnails, video previews, course materials
โ Lottie/TGS Thumbnail Generator
Generate static images from animated content:
Supported formats : Lottie JSON, TGS stickers
Frame extraction : Pick any frame from the animation
High quality : Vector-based rendering for crisp output
Perfect for : Animation portfolios, sticker previews, UI documentation
โ Base64 Image Converter
Create ultra-light image placeholders:
Tiny sizes : 2px to 32px preview generation
Progressive loading : Smooth transition effects
Code generation : HTML, CSS, React, Vue snippets
Size optimization : See exact byte savings
Perfect for : Website performance, blur-up effects, email templates
โ Text Thumbnail Generator
Design custom text-based graphics:
Canvas control : Custom dimensions with social media presets
Typography : Multiple fonts, sizes, weights, and effects
Backgrounds : Solid colors, gradients, or custom images
Text effects : Shadows, strokes, and positioning controls
Perfect for : Social media posts, blog headers, quote cards
โ Watermark Tool
Protect and brand your images:
Dual support : Text and image watermarks
Positioning : 9 preset positions plus custom placement
Styling : Opacity, rotation, and size controls
Batch processing : Watermark multiple images at once
Perfect for : Photography protection, brand placement, content marking
โ ๐ Quick Start
โ Online Usage
โ ๐ฆ Deployment Options
โ ๐ One-Click Deployments
Deploy instantly to popular platforms:
โ ๐ณ Docker
Run ThumbGenโ in a container:
# Pull and run
docker pull malithrukshan/thumb-gen
docker run -p 3000:3000 malithrukshan/thumb-gen
Copy
Visit http://localhost:3000โ
โ Docker Compose
Create a docker-compose.yml file:
version: '3.8'
services:
thumb-gen:
image: malithrukshan/thumb-gen
ports:
- "3000:3000"
environment:
- NODE_ENV=production
restart: unless-stopped
Copy
Run with:
docker-compose up -d
Copy
โ Building Docker Image Locally
# Build the image
docker build -t thumb-gen .
# Run the container
docker run -p 3000:3000 thumb-gen
Copy
โ Local Development
โ Prerequisites
Bunโ (recommended) or Node.js 18+
Git
โ Setup
Clone the repository
git clone https://github.com/Malith-Rukshan/thumb-gen.git
cd thumb-gen
Copy
Install dependencies
Start development server
Open your browser
Visit http://localhost:3000
Copy
โ Available Scripts
# Development
bun run dev # Start development server
bun run build # Build for production
bun run preview # Preview production build
# Testing
bun run test # Run tests in watch mode
bun run test:run # Run tests once
bun run test:ui # Run tests with UI
bun run test:coverage # Run tests with coverage
# Code Quality
bun run format # Format code with Prettier
bun run type-check # Check TypeScript types
Copy
Click to view Results
Test with : https://vitest.dev/
โ โ๏ธ Platform-Specific Deployment
โ Vercel
# Install Vercel CLI
npm i -g vercel
# Deploy
vercel --prod
Copy
โ Netlify
# Install Netlify CLI
npm i -g netlify-cli
# Deploy
netlify deploy --prod --dir=dist
Copy
โ Heroku
# Install Heroku CLI and login
git push heroku main
Copy
โ ๐งช Testing
ThumbGen includes comprehensive test coverage:
# Run all tests
bun run test
# Run tests with coverage
bun run test:coverage
# Run tests with UI
bun run test:ui
Copy
โ ๐ Use Cases
Content Creation : Generate thumbnails for YouTube videos, blog posts, and social media
Web Development : Create base64 placeholders for better loading experiences
Design Workflows : Quickly prototype text-based graphics and layouts
Brand Protection : Add watermarks to images for copyright protection
Educational Content : Extract frames from video tutorials and presentations
Marketing Materials : Design eye-catching graphics for campaigns
โ ๐ง Technology Stack
Framework : Vue.js 3 with Composition API
Language : TypeScript for type safety
Styling : Tailwind CSS 4 for modern UI
Routing : Vue Router 4 for SPA navigation
State Management : Pinia for reactive state
Build Tool : Vite for fast development and building
Testing : Vitest with Vue Test Utils
Package Manager : Bun for fast dependency management
โ ๐ค Contributing
Contributions are welcome! Please follow these steps:
Fork the repository
Create a feature branch
git checkout -b feature/amazing-feature
Copy
Make your changes
Add tests for new functionality
Run the test suite
bun run test
bun run type-check
Copy
Commit your changes
git commit -m 'Add amazing feature'
Copy
Push to your branch
git push origin feature/amazing-feature
Copy
Open a Pull Request
โ Development Guidelines
Write tests for new features
Follow the existing code style
Use TypeScript for type safety
Add JSDoc comments for complex functions
Update documentation for API changes
โ ๐ License
This project is licensed under the MIT License - see the LICENSEโ file for details.
โ ๐ง Acknowledgements
โ ๐ Support
If you found ThumbGen helpful, please:
โญ Star this repository on GitHub
๐ Report bugs via GitHub Issues
๐ก Suggest features via GitHub Discussions
๐ค Contribute by opening Pull Requests
โ ๐ฌ Contact