Inspiration

Hey everyone, my name is Brian and I am a trad dev, long-time entrepreneur, and massive fanboy of bolt. Having worked with bolt since November of last year, I knew going into the hackathon that 30 days in bolt is like a lifetime in traditional development. The ideas and possibilities of building a high quality app in bolt.new are endless, and consequently a top app submission is going to have to show something special.

So I started out with the idea that I need to build an app that was complex enough to require my deep technical knowledge, leverage my trad dev experience, but still be fun to use and visually pleasing. I had a couple of ideas regarding journaling and project management, but neither of them on their own seemed "big" enough to compete for a top prize, even if they were done well.

It wasn't until the builder pack came through and I saw the tavus challenge prize that the idea truly came to life. When I saw the insanely realistic replicas in tavus, I knew what I had to do. I needed to "flex" bolt AND tavus to build a conversational AI app that was designed to be modular and expandable and could be used for anything, personal or business — a single app to rule them all.


What it does

ignitechat.ai is your AI-powered productivity partner, currently combining task management, bookkeeping, and journaling into one simple conversation so you can stop juggling tools and start getting things done by just talking to your AI assistant.

But that’s not all. ignitechat.ai is designed to be modular — so today it launches with 3 modules, but tomorrow it could have 30. The core functionality has been developed and now it's just about iterating and expanding.

ignitechat.ai is a web application today, it will be integrated into your phone tomorrow, and in your glasses next month. It will assist you in every area of your life — from cooking, to car repairs, from advice when you are traveling, to revisiting family moments through home movies.


How we built it

The app is built on a standard React/Vite/Tailwind framework. We built it on bolt.new with hundreds of prompts. The app is backed by Supabase, with nearly 40 edge functions doing the heavy backend lifting and processing for us as well as securing the data through RLS policies.

Additionally, the core conversation processing is run through tavus conversational AI replicas and personas. However, the actual AI processing is completed through an OpenAI proxy that is developed as an edge function. This is how it works:

The user talks with Tavus AI, Tavus passes the conversation to our Supabase edge function, our edge function passes the processing to OpenAI, OpenAI passes the conversation back to our edge function, our edge function passes the conversation back to Tavus who responds in video back to the user with accurate data and information from our application. The message is submitted into our database, and the UI subscribes to a real-time Supabase broadcast channel to update the AI as the conversation is in progress.

WOW!
If that seems complex it's because IT WAS!!


Challenges we ran into

The biggest challenge was definitely the tavus conversational AI integration. When I started, I had no idea that tavus existed. I started diving into the documentation, but it was limited. I almost gave up on the integration altogether until a few days later, reviewing the documentation again, I stumbled upon a code example (I think it was in Python).

What I figured out that led me to success was the idea of a proxy to OpenAI. In order to tightly couple a tavus persona with a real-time dataset, you have to create an LLM proxy. Fortunately, because bolt.new allows us to quickly deploy edge functions, I was able to spin up a proxy with relative ease.

I started with a simple tool: "list all tasks". Once I had real data results from my backend, the rest of the app build was much more straight-forward.


Accomplishments that we're proud of

Definitely the tavus integration and the use of real-time broadcast from Supabase. I had not leveraged either of those tools previously and with only 30 days, I knew that it was going to take a lot of mental energy to get all of the pieces working in concert.

It is insanely time consuming to try to test a conversational AI — it requires loading up a conversation every single time to test. I probably spent as much time testing the app as I did developing it. I guesstimate it took me about 5 days straight of developing and testing just to get it working at all.

However, when I finally got it working for the first time...
I think the whole neighborhood heard me scream and yell and saw me dance like a crazy person.


What we learned

We learned a some new things and had some existing thoughts reinforced.

  • First, our suspicions were confirmed that bolt.new is revolutionary and is absolutely disrupting the software industry.
  • I learned how to use OpenAI other than for some basic chat responses.
  • I learned how to build or consume an AI "tool".
  • I learned about AI conversation/chat streaming protocol.
  • I learned that personas and replicas could be used to actually have a real conversation with real data at a very high quality.
  • I knew AI could chat about topics it was trained on, but I didn’t realize it could act on real-time data sets so quickly and so well.

What's next for ignitechat.ai

Of course, with only 30 days, there are still some bugs we need to iron out and do some cleanup. But after that…
we are going to launch this app and take over the world!

Built With

  • bolt
  • netlify
  • openai
  • react
  • supabase
  • tavus
  • vite
Share this project:

Updates

Submission history