Case study

AImajin Mobile App

A production mobile app for AI image editing, image generation, and AI video—delivered as a React Native client with a Django backend, real-time progress updates, subscriptions, and scalable deployment.

Problem

  • AI media workloads are long-running and spiky—mobile UX needs real-time progress and resilient retries.
  • A production app requires secure auth, billing/subscriptions, and reliable job processing.
  • Backend scaling and cost control matter more than “demo speed” once users are in the app.

Solution

  • Built a React Native (Expo) application for AI image editing/generation and AI video workflows.
  • Implemented a Django backend (DRF + ASGI/Channels) with async job processing (Celery + Redis).
  • Used Nginx as a reverse proxy for TLS termination and WebSocket proxying.
  • Integrated Supabase (auth + Postgres) and RevenueCat (IAP + webhooks).
  • Integrated Cloudflare R2 for media storage and Cloudflare Vectorize for vector search.
  • Integrated multiple AI providers (Replicate, OpenRouter, FAL, Gemini) behind a single backend interface.
  • Instrumented error tracking with Sentry (backend + workers).

Architecture

Results

Shipped to Google Play

Production app with 100+ downloads and 4+ star rating

Real-time generation UX

WebSocket progress updates for AI jobs taking 10–60s

Sub-£50/month hosting

Cost-aware infrastructure on Hetzner with Docker Swarm

RevenueCat integrated

Subscription billing with webhook-driven entitlements

How this maps to client use cases

  • Mobile AI features where UX requires streaming/progress updates (generation, processing, analysis).
  • Subscription-based AI products that need reliable billing and entitlement management.
  • Teams migrating from “prototype GPU scripts” to maintainable backend services with queues and monitoring.