Elixir app that outsources the AI, keeps the webhooks
A Phoenix LiveView sticker generator that delegates generation to Replicate but handles the messy async plumbing itself.

What it does StickerBaker is a Phoenix LiveView app where you type a prompt and get an AI-generated sticker back. The actual image generation and safety moderation run on Replicate’s API; the app orchestrates the handoff via webhooks and broadcasts results back to the browser in real time.
The interesting bit
The README walks through the exact Elixir code for the async dance: a :kick_off message fires immediately so the UI never blocks, then a webhook controller catches Replicate’s callback, uploads the finished image to Tigris (since Replicate doesn’t persist outputs), and LiveView streams the result back to the client. It’s a clean reference implementation for “how do I not lose track of long-running external jobs when the user refreshes.”
Key highlights
- Built in Elixir/Phoenix LiveView with async job handling via self-messages and webhook callbacks
- Safety moderation pipeline using Replicate’s
fofr/prompt-classifierbefore image generation - Images persisted to Tigris object storage; Replicate handles the queue, the app handles the state
- Local dev requires ngrok tunneling for webhook delivery (documented, not hidden)
- Deploy target is Fly.io with Postgres
Caveats
- The core “AI” is entirely external; this is integration and orchestration code, not a model
- You’ll need three external service accounts (Replicate, Tigris, ngrok for local dev) just to run it
- The architecture diagram is referenced but not explained in detail
Verdict Grab this if you’re building Phoenix apps that need to manage external async APIs without losing state on disconnects. Skip it if you want to run models locally or need a drop-in sticker tool without the service dependencies.