Back to projects

AI character portraits and short videos

AotAvatar

Transform an uploaded portrait into an anime-inspired character, then create a short cinematic video from the result. Visit https://aotavatar.com.

Outcome

A working generation workflow combines character styles, background jobs, a personal media vault, credit accounting, and API access.

My role

Full-Stack Engineer

How I helped

  • Built the photo-to-character transformation and regeneration workflow.
  • Connected asynchronous image and video generation to a credit-based product.
  • Added account-scoped media and a versioned automation API.

Product

The workflow in context

Live homepage screenshot captured directly from https://aotavatar.com.

Screenshot of AotAvatar's live homepage showing the portrait studio hero and navigation.
Public website screenshot

The solution

Users upload a portrait, select a character style, and follow generation progress until their image is ready. Regeneration and short video synthesis extend the same workflow.

What changed

The Rails application includes seven character styles, asynchronous portrait generation, six-second video synthesis, a credit system, and a versioned JSON API. An offline SVG generator supports local verification without calling an AI provider.

Behind the solution

Devise manages accounts, Active Storage holds source and generated media, and Solid Queue workers handle image and video generation through Google GenAI. The interface uses a military-inspired palette and sharp editorial layouts.

Technical decisions

  • Run slow generation outside web requests and expose job progress to the UI.
  • Keep credit accounting and generation state in the application database.
  • Generate a style-specific storyboard frame before video synthesis.
  • Support local development with a procedural image fallback.

Key features

  • Portrait upload, character selection, and regeneration.
  • Short cinematic video generation.
  • Personal media vault and credit-based usage.
  • Versioned REST API for automation.

Product boundaries

AotAvatar is an independent anime-inspired project, not affiliated with or endorsed by the original rights holders. No adoption or conversion metrics are claimed here.

AI system implementation

Google GenAI receives the uploaded portrait and selected character direction through background generation workers. A style-specific storyboard frame precedes video synthesis. Solid Queue runs slow generation, Active Storage retains source and output media, and database state tracks progress and credits. The local procedural SVG generator is a development aid, not evidence of model-generated results.

Could a similar approach help your business?

Tell me where work gets stuck. We can identify a practical first improvement and what success should look like.

Discuss your challenge