bandrik0/manim
1
Bu proje, Manim tabanlı bir logo oluşturma web uygulamasıdır.
🎬 Manim Logo Renderer WebApp
Create beautiful animated logo videos in seconds using Manim! Upload your logo (SVG/PNG), pick an animation, and download your MP4 — all in your browser.
✨ Features
- Multiple Animations:
draw(SVG outline tracing),fade,spin,bounce - Customizable: Set background color, animation duration, and video quality
- Instant Preview: Drag & drop logo, see animation options, download result
- Simple Stack: FastAPI backend (Python), minimal HTML/JS frontend
- Docker-ready: 1-click deploy to Hugging Face Spaces or run locally
📂 Project Structure
.
├── backend/
│ ├── app.py # FastAPI app: POST /render, GET /health, serves /web
│ ├── renderer.py # Manim scene generator + CLI render
│ ├── requirements.txt # Python dependencies for backend + Manim
├── frontend/
│ └── index.html # Drag & drop UI
├── Dockerfile # Root-level, for Hugging Face Spaces & Docker
├── .gitignore
└── README.md🚀 Local Setup
Requirements:
- Python 3.11+
ffmpeg(if not using Docker)- On Apple Silicon (macOS M1/M2), Manim is easiest via conda-forge (see Troubleshooting below)
1. Create a virtual environment & install dependencies
python3 -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
pip install --upgrade pip
pip install -r backend/requirements.txt2. Run the backend server
uvicorn app:app --app-dir backend --host 127.0.0.1 --port 8000 --reload3. Open the web UI
Just open frontend/index.html in your browser.
Health check: http://127.0.0.1:8000/health → returns {"ok": true}
🐳 Deploy on Hugging Face Spaces (or Docker)
- On Hugging Face Spaces:
- Click "Create Space", choose Docker as the SDK, and point to this repo.
- The included
Dockerfilehandles all dependencies.
- With Docker locally:
docker build -t manim-logo-webapp .
docker run -p 8000:8000 manim-logo-webapp Then open frontend/index.html and use as above.
🛠️ Troubleshooting / Notes
- Apple Silicon (M1/M2): Manim works best via conda.
brew install miniforge
conda create -n manim python=3.11
conda activate manim
pip install -r backend/requirements.txt- SVGs: For best results, use simple SVG logos (single path or group).
- Security: The backend does not persist uploads or output files.
📦 Dependencies
- Manim Community Edition (video rendering)
- FastAPI (API backend)
- Uvicorn (ASGI server)
- Pillow (image processing)
- ffmpeg (video encoding, must be installed system-wide)
All backend Python dependencies are listed in backend/requirements.txt.
📝 License
MIT License — see LICENSE.
🙏 Credits
- Built by @beitkhalaf
- Powered by Manim Community
- Inspired by open-source creativity!
