Inspiration 🌱

There's been a lot of use cases with AI that we have seen in the last few months. However, we felt that the most compelling use-case was for an AI assistant that helps schedule your tasks and prevent overflowing calendars 📅

Being knowledge workers ourselves, we often struggle to schedule our day and build healthy boundaries around life and work. It is very easy to spend the entire day in front of our laptops.🧑‍💻

Despite having a myriad of tools to help organize stuff, it becomes a task in itself to manage all these different 'productivity' tools which seemed counterintuitive 🔧

A lot of the tasks we do on a daily basis are straightforward, most of it should be automatable. That's when we thought, we should probably leave the grunt work of figuring out scheduling to AI and focus on actual work or even just make more time to relax 🧘‍♀️

What it does 👀

Udaivi, our AI assistant essentially helps you figure out your schedule in a simple manner. All you have to do is tell it your tasks for the day or even week and let it do the magic. Udaivi is connected to your Google Calendar and is Location Aware📍

You can use it for any activity, even shopping or going to a salon. It automatically scans your location and tells you nearby places you can go to, essentially saving you the time of having to search and sift through countless reviews for any business.

Unformatted AI Response

How we built it ⚒️

We really needed a product that knew where we were, knew our schedule and helped plan the tasks that would arise according to our schedule.

While exploring how to use Gemini along with a server side framework like Next.js, we stumbled upon Vercel's AI SDK that allowed us to integrate Gemini into our web application without breaking our heads over how to stream the data as it comes.

We decided this is the best way to integrate an LLM into our web-app and that's what we did. Along with this, we also made use of Gemini and Vercel AI SDK's ability to facilitate custom tool calls allowing us to schedule events in the user's calendar along with figuring out where the user is (as long as they allow location access in their browsers).

On top of this, we took the help of Vercel's V0 and NextUI to build stunning visual elements that go well with the theme of our application.

Challenges we ran into 🚧

  • Figuring out how to use Gemini in a web application 🙂‍↕️

    • All of us being new to building products with Generative AI found it very challenging to understand and use the @google/generative-ai SDK along with Vercel's AI SDK. It took a couple of weeks for us just to understand how to handle the data being sent out.
  • On top of being newbies to GenAI, we also had to deal with cryptic error messages that made it really hard to debug. For example, the usage of .nullable() in zod is not supported with the @google/generative-ai SDK 🫡

  • Had to deal with Gemini AI rate-limiting us quite frequently, and had to come up with ways to just overcome that 👩‍🎨

  • We found the lack of support in the Langchain ecosystem to be quite cumbersome 😞

  • We tried really hard to get it deployed on Vercel but Gemini just won't work on Vercel 😭

Accomplishments that we're proud of 🎊

  • Our First AI Application: Coming from a non-AI background, the scope of the project was very intimidating but once we realized how AI could make building this application easier, we went all-in and finally got it done! 🤖

  • Implementation: To say that integrating Vercel's AI SDK to work with Gemini was challenging would be an understatement. However a couple of caffeine fueled nights gave us the momentum to just hack away! 🚀

  • Our Demo Video: I'll be honest. We are terrible video editors. But for this hackathon, we learned how to use video editing tools and made a genuine attempt to bring out a polished demo. 🙌

  • Landing Page: We also built out a pretty neat landing page using a No-code tool called Framer, check it out here: https://udaivi.framer.website/ 😌

  • And honestly, there were many days where we wondered if we'd even be able to put together a working application. But after going through the journey, we are really proud of the fact that we built a functioning AI app from scratch that can be submitted for the Google AI Hackathon. 🥹

What we learned

  • Building AI Applications does NOT mean AI does the building. Contrary to popular belief, there's a lot of hard work that goes behind building one. 😵‍💫

  • Although for this build, we did not use a no-code tool, we did explore some no-code tools to build AI products and understood how powerful these platforms really are, v0.dev , Framer to name a few. 📝

  • We thought quite a bit about the user journey and flow while putting together the UI for the application. Since the way to interact with AI apps is fundamentally different, we had to rethink some design practices. 👨‍🎨

What's next for Udaivi 🤔

Firstly, we would want to polish the application and get it deployed. Since it was a hackathon, we had to accelerate the development process. Apart from those modifications, the possibilities to expand use-cases is pretty much endless with Udaivi, we have a big vision for our feature:

  • Attach documents and have Udaivi automatically suggest documents relevant to your tasks and even have a first draft ready. We all know how daunting it is to start on a blank sheet of paper. 📄

  • Since it is connected to your Google Calendar. It knows your daily working hours and can automatically place meetings ensuring no conflict. 📅

  • Help promote local small businesses and raise awareness among people. 🛍️ Add a book now/ reserve button with shops, so customers can directly contact the shops & book.

  • Make Udaivi a central hub and integrate with all Google Workspace tools like Keep, Tasks. 🏢

Built With

  • ai
  • gemini
  • nextjs
  • nextui
  • tailwindcss
  • v0
  • vercel
  • zod
+ 4 more
Share this project:

Updates