Omni Mail
OmniMail is a full-stack email management app built with Next.js, TypeScript, Prisma, and Tailwind CSS, enhanced with AI-powered email generation and autocomplete via natural language prompts.

Technologies
OmniMail – An AI-Powered Email Client Built With Gemini
OmniMail is a full-stack, AI-powered email client that I built as the final project for my master’s degree. The main goal of this project was to experiment with practical AI features in a real-world application, specifically focusing on how large language models can assist with everyday communication tasks like writing emails.
Rather than building AI in isolation, I wanted to explore how it could be embedded naturally into a familiar workflow. Email felt like the perfect use case — something people write every day, often repetitively, and sometimes under time pressure.
Why I Built OmniMail
For my final university project, I wanted to go beyond theory and build something hands-on that demonstrated:
- Practical AI integration, not just model calls
- Context-aware text generation
- A full-stack architecture suitable for production use
- Clean UX around AI-assisted features
OmniMail was designed as an exploration of how AI can support users instead of replacing them. The focus was on speeding up writing while still keeping the user in control of tone, content, and intent.
What OmniMail Does
OmniMail is a modern email client that enhances the email writing experience using AI. It introduces two core AI-driven features:
- Email generation from a prompt
- Email autocompletion using contextual awareness
Users can start writing an email naturally and let the AI assist when needed, rather than forcing a fully automated experience.
AI-Powered Email Generation
The first AI feature allows users to generate an email from a simple natural language prompt. Instead of starting with a blank screen, users can describe what they want to say — for example, a follow-up, a formal inquiry, or a quick reply — and OmniMail generates a structured draft.
This functionality demonstrates how AI can reduce friction at the very start of the writing process, especially for repetitive or formal emails.
Context-Aware Email Autocompletion
The second AI feature focuses on email completion with context. OmniMail uses:
- The previous email in the thread
- The content the user has already typed
By combining these two inputs, the AI can intelligently continue the email in a way that feels natural and relevant. This mirrors real-world usage more closely than generic text generation, as it respects conversation flow and existing intent.
This was a key learning objective of the project — understanding how context depth directly impacts output quality.
How It’s Built
OmniMail is implemented as a full-stack application with a strong emphasis on clean architecture and scalability.
Frontend
The frontend is built with Next.js and TypeScript, providing a modern React-based structure with type safety throughout the codebase. Styling is handled using Tailwind CSS, allowing for a clean, responsive UI that works well across devices.
The interface was intentionally kept minimal to ensure that AI features enhance the experience without overwhelming it.
Backend & Database
The backend logic is implemented using Next.js API routes, with Prisma ORM managing database interactions. The application uses PostgreSQL, hosted on Neon, for reliable and scalable data storage.
User authentication and email-related data are securely managed, ensuring that AI features operate within proper user boundaries.
AI Integration With Gemini
For AI capabilities, OmniMail integrates Gemini 2.0 Flash via the Gemini API. This project was my first deeper dive into integrating an LLM into a production-style application.
I focused on:
- Prompt design for reliable outputs
- Managing context windows efficiently
- Balancing speed and response quality
- Avoiding over-generation in autocomplete scenarios
The AI features were built to feel helpful rather than intrusive, reinforcing the idea that AI should assist, not dominate.
What I Learned From This Project
OmniMail played a key role in strengthening my understanding of:
- Applied AI in user-facing products
- Context-aware prompt engineering
- Full-stack application design
- Database modeling with Prisma
- Building AI features that respect UX principles
As a final academic project, it allowed me to bridge theoretical knowledge and practical engineering in a meaningful way.
Final Thoughts
OmniMail represents my first end-to-end exploration of AI-enhanced user interfaces. It combines modern web technologies with practical AI use cases and demonstrates how language models can improve everyday tools when implemented thoughtfully.
This project reflects both my academic journey and my growing interest in building AI-assisted products that feel intuitive, useful, and human-centered.