mirror of
https://github.com/pischule/memevizor.git
synced 2025-12-19 06:56:42 +00:00
0da0783bea554aed11b3d759eff635f62bf0b7ad
Memevizor 📺
A Telegram bot for meme management with cloud storage integration and a web interface for display.
Features
- 🤖 Telegram bot that handles image and video memes
- ☁️ Cloud storage integration (AWS S3/Yandex Cloud compatible)
- 🖼️ Web interface with auto-refreshing media display
- 🔐 Approver user system for content moderation
- 📁 Local development mode with dummy storage
Architecture
The system consists of:
- Telegram Bot: Processes commands and media
- Storage Layer: S3-compatible storage for memes
- Web Interface: Simple HTML page for viewing memes
- Spring Boot: Kotlin-based backend with dependency injection
Setup
- Create
.envfile with:
# Telegram Bot Configuration
BOT_TOKEN=your_bot_token
FORWARD_CHAT_ID=your_forward_chat_id
APPROVER_USER_IDS=id1,id2,id3
# S3 Configuration (for production)
S3_ACCESS_KEY_ID=your_key
S3_SECRET_ACCESS_KEY=your_secret
S3_BUCKET=your_bucket_name
- For local development:
./gradlew bootRun --args='--spring.profiles.active=local'
Usage
- Send a meme (image/video) to the Telegram bot
- Reply with
thisor!soxokto approve and upload - View the meme at
http://localhost:8080(or your deployed URL)
Deployment
Docker
docker build -t memevizor .
docker run -d -p 8080:8080 memevizor
Cloud (Heroku/AWS/etc)
- Set environment variables
- Deploy with your preferred provider
Contributing
Contributions welcome! Please:
- Fork the repository
- Create a feature branch
- Submit a pull request
License
MIT License (replace with your preferred license)
Languages
Kotlin
74.9%
HTML
23.2%
Dockerfile
1.9%