Project Story

Inspiration

It all started with a simple question: What would my life look like if I had been born in a different era or in a completely different world?

I’ve always been fascinated by alternate identities, nostalgia, and the power of AI to transform a single photo into a visual story. I wanted to create more than just another filter — I wanted to build an emotional experience where people could reconnect with versions of themselves that never existed. That’s how Past Forward was born — a creative remix between past, present, and possible futures.

What it does

Past Forward is a web application (with native Android integration) that lets anyone upload a selfie and instantly receive a beautiful 2x3 Polaroid-style photo collage featuring two different modes:

  • Decades: See yourself in six different decades (1950s through 2000s) with period-appropriate clothing, hairstyles, and environments.
  • Parallel Worlds: Transport yourself into alternate universes such as Cyberpunk, Noir, Steampunk, Fantasy, Space Opera, and Post-Apocalyptic.

The app generates six images, arranges them into a ready-to-share collage, and includes fun interactions like swipe-to-reject, pinch-to-zoom, local saving, and shareable links.

How we built it

I developed Past Forward as a solo project over the course of three weeks.

Tech Stack:

  • Frontend: React + TypeScript + Vite + Tailwind CSS
  • Animations: Framer Motion
  • AI: Google Gemini via @google/genai
  • Design: Retro Polaroid aesthetic with handwritten fonts (Permanent Marker and Caveat)
  • Mobile: Native Kotlin integration to save images to the device gallery using MediaStore

Images are processed in Base64, generations run sequentially with controlled delays to respect Gemini’s rate limits, and state is managed locally.

Challenges we ran into

  • Facial consistency: Maintaining recognizable facial features across six dramatically different styles was the biggest technical challenge.
  • Rate limits & performance: Gemini’s strict limits required smart sequential generation, thoughtful loading states, and robust error handling.
  • Mobile experience: Ensuring smooth animations, swipe gestures, and haptic feedback worked well on both web and Android devices.
  • Prompt engineering: I had to iterate extensively to produce cinematic, high-quality results instead of generic AI outputs.

Accomplishments that we're proud of

  • Creating an experience that is both fun and emotionally engaging — users don’t just generate images, they often feel moved seeing themselves in other lives.
  • Delivering a polished Polaroid design that perfectly captures the nostalgic feel I was going for.
  • Achieving strong facial consistency in most generations, especially in Noir and Post-Apocalyptic styles.
  • Successfully building both a modern web experience and native Android image-saving functionality in one cohesive project.

What we learned

I deepened my skills in advanced prompt engineering, learning how to guide AI models to preserve identity while adapting to complex styles. I also improved significantly with complex animations using Framer Motion and gained a realistic understanding of current AI model limitations.

Most importantly, this project reinforced that combining technology + emotion + thoughtful design can create tools that truly connect with people.

Built With

Share this project:

Updates