Files
anime-qize/README.md
2025-12-30 17:37:14 +03:00

2.6 KiB

Anime Quiz Video Generator

Generate "Guess the Anime Opening" videos for YouTube and TikTok.

Quick Start

docker-compose up --build

After startup:

Project Structure

project-root/
├── backend/
│   ├── app/
│   │   ├── main.py          # FastAPI endpoints
│   │   ├── models.py        # Pydantic models
│   │   ├── video_generator.py # Video generation logic
│   │   └── config.py        # Settings
│   ├── requirements.txt
│   └── Dockerfile
├── frontend/
│   ├── src/
│   │   ├── App.vue          # Main component
│   │   ├── main.js
│   │   └── style.css
│   ├── package.json
│   └── Dockerfile
├── media/
│   ├── audio/               # MP3 anime openings
│   ├── backgrounds/         # Looping MP4 backgrounds
│   └── posters/             # Anime poster images
├── output/
│   └── videos/              # Generated videos
└── docker-compose.yml

Adding Content

Audio Files (Required)

Place MP3 files of anime openings in media/audio/:

media/audio/
├── aot_op1.mp3
├── demon_slayer_op1.mp3
└── jjk_op1.mp3

Place looping MP4 backgrounds in media/backgrounds/:

  • Recommended duration: 5-10 seconds
  • Abstract animations, particles, gradients work best
  • Will be looped and resized automatically

Posters (Optional)

Place anime poster images in media/posters/:

  • Supported formats: JPG, PNG, WebP
  • Will be displayed in answer scenes

Video Modes

Shorts / TikTok

  • Resolution: 1080x1920 (9:16)
  • Fast pacing
  • Best for 3-5 questions

Full Video (YouTube)

  • Resolution: 1920x1080 (16:9)
  • Includes final screen with CTA
  • Best for 10-20 questions

API Endpoints

Method Endpoint Description
GET /health Health check
GET /content List available media
POST /generate Generate video
GET /download/{filename} Download video
GET /videos-list List generated videos

Example Request

{
  "mode": "shorts",
  "questions": [
    {
      "anime": "Attack on Titan",
      "opening_file": "aot_op1.mp3",
      "start_time": 32,
      "difficulty": "easy",
      "poster": "aot.jpg"
    }
  ],
  "audio_duration": 3
}

Requirements

  • Docker
  • Docker Compose

Tech Stack

  • Backend: Python 3.12, FastAPI, MoviePy, FFmpeg
  • Frontend: Vue 3, Vite
  • Container: Docker, Docker Compose