Inspiration:

I've always loved nostalgia. Finding an old photo, coming across an old TV ad from my childhood, and more recently, looking at Timehops, seeing what I was doing today a year ago, 2 years ago, 3 and so on. But two major life changes have made me realise just how sacred our memories really are.

1. Becoming a father. Seeing my 4 year old now, and then having a throwback pop up on my phone of how he looked a year ago, how he couldn't speak full sentences two years ago and how he couldn't walk 3 years ago. Comparing how tiny he once was to how he can ride a bike now. It really makes you value the speed at which life passes you by.

2. My mother has developed dementia: and over the last year, she has lost the ability to recognise her own children. Gone are any chances I had of asking her questions about raising us now that I'm a parent myself. How did I sleep, how did I eat, any advice on how I can help my son? Any wisdom or experiences she had to share, we'll now be deprived of. All her memories, good and bad, jumbled and no longer accessible on command.

Similarly, when my son turned 4, he lost the memories of the first 3 years of his life.

Memories I and his mother will always cherish, or so I hoped, until my mother became sick, and I was struck by the terrifying prospect that the day may come that I also forget these precious memories, forget my children.

These combined experiences, watching my son lose his memories and watching my mother lose hers, apart from causing me the obvious heartbreak, awoke in me a desire to help journal not just significant life events but even the quiet days. Because every type of day, every season in totality makes up a year, makes up a life.

What it does:

Project Echo is an AI powered biographer. The magic comes from the app's generation of an aged up avatar based on you, the user. The app, via Tavus' Replica APIs, captures your likeness and then will produce an aged version of you that you can talk to. This aged avatar is your Echo.

Once you go through the story onboarding, because life is a collection of stories, you record yourself speaking a script that helps Tavus create your Echo.

The story onboarding is presented in a voice of a small child, to evoke feelings of youth, innocence and nostalgia. The app begins with a child's voice, then you see yourself as you are today in the camera, then your older self appears as your Echo.

Your echo then speaks to you every day, asking you to remind them of what happened today. On first load, the Echo recites this script:

"Hey you... or should I say hey, me. I'm you, from years in the future. How many? I can't say without giving too much away. I'm not as sharp as you-as I once was. My memories are beginning to fade. Some of the moments I've cherished are becoming... hazy. I don't want to forget. Everything we've done, everything we've loved, everything we've lost. It was all beautiful, and it can't be forgotten. You've got to me help me-help you remember all of this, so that by the you, are me, nothing is forgotten."

It's meant to create an emotional response, an affinity for the Echo, that you feel like you are confiding in your future self, preserving memories for yourself for the inevitable day that your mind will start to slow, and memories won't come as easily.

With the user's permission, the app notifies them every day, of every year to rewatch their recordings of that particular day on previous years. Eventually a user would build up a rich, ordered video journal over several years, hopefully decades that they can revisit any time, and share with loved ones.

How I built it:

Disclaimer: I am a first time app developer so explaining the methodologies won't be easy for me!

The Hackathon and the perks gave me the push I needed to finally build out the skeleton of this app idea. I used Gemini to build out my prompts, but I had no idea how to use Bolt or what level of coding experience I'd need to execute this.

So I took the app creation prompt from Gemini, and pasted it into Bolt, and Bolt created all the frameworks for me. I really wanted to test the validity of the hackathon invitation that it was for "ANYONE with ideas worth building and the drive to make them real".

I continued the development in Bolt, resorting to Claude every so often to overcome bad code loops that Echo would get stuck in. I mainly explained the outcome I wanted to Echo in discussion mode then I would ask it to implement once I thought it made sense.

Challenges I ran into:

1. Time: I only saw an ad for the hackathon a week before the deadline, so there's that! I was under a tight time constraint to learn the platforms and build, debug, edit and deploy.

2. Experience: I wasted two days asking Gemini and ChatGPT to vibe code for me whilst I figured out Visual Studio Code and tried to understand local dev environments. I have not developed anything before, and have a super basic understand of HTML from building some websites years ago. Eventually I thought to just import the whole thing back into Bolt and go from there. That worked out nicely for me and things started moving forward, until:

3. Code Hallucinations: Bolt began to catch itself in broken loops, repeating the same mistake over and over. Despite me reverting previous backups, restarting the server, and switching between build and discuss mode, Bolt just could not get out of its broken loops.

I had to import entire page codes into Claude and ask it to identify and fix the breaks, then paste that full page code back into Echo. It cost me days trying to fix these breaks, and millions of tokens.

Echo lacks the ability to understand when it is repeating the same error and failing to fix it, and as far as I can tell, there's no way for tokens that are spent on this kind of AI failure loop to be refunded.

For a new dev like me who must rely on these tools, it is a frustrating experience. Once I bought more tokens and found that Echo still couldn't reconcile the wrong code, I almost gave up and thought there's just still no way I can be a vibe coder. But I wanted to get this app idea in front of the judges so I persevered to at least get something close to an MVP.

4. Deployment Pains: I tried to deploy the app multiple times after connecting to Netlify. It used my last 1M tokens to try to fix an error I couldn't understand.

Despite running the error through Echo, Claude and ChatGPT, and applying every fix they recommended, I couldn't get the errors to go away until the last minute of the submission.

I spent the last day troubleshooting why the app wouldn't deploy. And when I finally got it up and running, I learnt that I had a lost the last day of progress I made in Bolt!

Accomplishments that I'm proud of:

1. The realisation of the concept: to get the idea out of my head and onto a screen is something I couldn't have imagined doing, alone, just a year ago. It really shows how far AI has come in a short time.

2. The onboarding: it's as close to what i imagined as possible, to think I was able to achieve it without hiring a programmer, a sound engineer, a visual artist etc, I managed to put it together myself with the help of Bolt!

3. Learning Curve: Going from zero experience with VSC and Echo to having something resembling an app in a few days, faster than I ever thought possible.

What I learned:

Learn some coding: I imagined that vibe coding is as simple as telling the AI your idea and it builds whatever frameworks and UI you need with whatever language is necessary, and it will all work because AI is code, so it understands code! I was deeply wrong.

It seems smart to at least understand the foundations so that you're not helpless like I was when the AI gets stuck hallucinating.

What's next for Project Echo:

With enough funding and resources, I would continue developing:

1. Implement the Echo Creation Workflow: using Tavus’ Replica API to create the likeness of the User. Or perhaps a multi-step avatar creation workflow to capture the user's face first and age it up in photos, then take those aged photos and turn them into the moving and speaking Echo.

2. Build out the Journal/Memories Viewing Experience: Create a beautiful, intuitive, tactile interface that’s a pleasure to browse through your months’ and years’ worth of memories. The UI needs serious optimisation with uniform buttons and responsiveness being a top priority. I would like this to become a mobile app so it needs to be further designed around that.

3. Monetisation: Add tiered plans allowing for HD/4K memory storage. Monetisation allows the app to stay alive and expand infrastructure. Freemium or ad supported.

4. Charity: % of profits go to organisations helping those with Dementia/Alzheimers and their families. This is the big "Why" of the app. It's highest purpose, to help those who can remember, to journal, and to help those who might forget, to remember.

Built With

Share this project:

Updates