Inspiration

I have used many AI apps before. Most of them saved me a lot of time.
But in my office work, the most boring and repetitive tasks were always emails and the calendar.
So I decided to add AI magic ✨ to emails and the calendar.


What it does

Merlin is a personal AI assistant that helps you manage your emails and calendar from one place. You can chat with Merlin to see your day, schedule meetings, find free time and handle emails without switching apps.
Merlin understands your schedule and reads your emails to help you reply, organize and follow up, so you can focus your time where it’s needed most.

Merlin Dashboard


How I built it

Merlin is built using Serverpod’s standard 3-part architecture.

• The Flutter app provides the UI and overall user experience. I spent significant time refining the UI to make sure it looks good and is easy to understand for everyone.
• The Serverpod backend handles all the logic. It processes chat requests, connects with Google services for email and calendar, manages user preferences and stores data such as chat history and user context in Postgres.
• Google Gemini is used to understand user messages and generate natural responses based on the context.
• The client layer connects the app and the backend. Thanks to Serverpod, this layer is automatically generated.


Challenges I ran into

• Integrating Google OAuth was tricky and took time.
• Dealing with time zones and all-day events was also challenging, since the Calendar API represents them in different ways.


What I learned

This was my first time building a mobile app. Before this, I mostly worked on web development, so learning Flutter and Serverpod and building an end-to-end app was a fun experience.


What's next for Merlin

Features
Next, I want to integrate tools like Notion and extend Merlin with more features.

Bugs
Time zone handling needs improvement. The application works fine locally but needs to support all time zones properly.


Let me know what you think. Thank you for reading this!
Cheers,
Suchith

Built With

Share this project:

Updates