Coin 0
Back

SnapSwap | Built in <36 hours for the Contra x Wispr challenge

The problem

Long-distance relationships come with their own kind of friction.

When you're physically apart, there are fewer opportunities to generate something together in real time. Most digital tools simply facilitate exchange. Very few create a lightweight shared experience that feels immediate and personal.

That was the space SnapSwap explores.

SnapSwap Image Gallery

Hilarious or romantic scenarios AI-generated, ready for the face swap

The Solution

SnapSwap started from a simple behavioral observation: people feel closer when they create something together.

The product is a lightweight web experience where two partners upload their photos and generate a shared AI image that places them inside the same scene. The output becomes a co-created moment — something that didn't exist before they both participated.

The focus was on immediacy. The interaction had to be fast enough to feel playful, not procedural. The interface removes unnecessary steps and keeps the flow linear: join, upload, generate, share.

What matters is the shared result. The generated image becomes a digital artifact of "us," created in real time, even if the two people are physically distant.

The Process

The project was built end-to-end in under 36 hours, including design, architecture, implementation, debugging, and live testing.

I used Lovable to rapidly structure the frontend and iterate on the interaction flow. Supabase handled storage, authentication logic, and session state. Edge functions orchestrated the image generation process securely, while OpenAI APIs powered the visual output.

The technical complexity centered around coordination.

Two independent users needed to enter the same session, upload assets at different times, and trigger a single shared generation. That required careful structuring of session data: partner identifiers, upload states, and generation status all needed to live in a consistent relational model.

Early versions exposed state issues. Images were uploaded without confirmed pairing. Sessions could remain incomplete if one partner dropped. Simultaneous actions created duplicate triggers. I restructured the database schema to make state transitions explicit and deterministic, introducing clearer status fields and tightening row-level security policies to prevent invalid updates.

By the end of the 36 hours, the product was fully functional, deployed, and resilient to the most common interaction failures.

SnapSwap onboarding - value anticipation

Next Iterations

The current version validates the core interaction. The next step is designing to leverage viral loops.

Future iterations would introduce structured sharing mechanics, allowing couples to export their generated scenes directly to social platforms with embedded SnapSwap attribution links. Each shared image would function as both a memory artifact and a distribution surface.

Additional layers could include collaborative prompts, leaderboards, scenario voting, and limited-time themed drops to create recurrence and anticipation.