MailTales is a web app designed to breathe life into your email inbox. With the help of Nylas & AI, MailTales offers unique and creative ways to interact with your emails, transforming them into bite-sized stories, engaging summaries, and even providing insights through sentiment analysis. You can try it https://mailtales.amitwani.dev
Youtube - https://youtu.be/zk88KqHMCR0
Chat Over Your Inbox: With MailTales, you can chat with your email inbox!
AI-Powered Email Summaries: MailTales provides concise, AI-generated summaries of your emails
Listen to AI-Generated Stories: MailTales can convert the content of your emails into engaging audio stories.
Sentiment Analysis and Categorization: MailTales' sentiment analysis feature helps you understand the tone of your messages. The app also categorizes emails based on their content.
Full Stack: NextJS Backend: NodeJS Deployment: Vercel, Fly.io Database: PostgreSQL Queues: Upstash Kafka Email: Nylas AI: Gemini
Nylas: Nylas is used for authentication of user and fetching their emails from inbox
Gemini: Gemini is used for generating AI responses as well as generating embeddings. Model used for generating responses is gemini-1.5-flash
and for embeddings it is text-embedding-004
Postgres: Postgres is used to store user and emails data. @vercel/postgres
is used for this.
Upstash Kafka: Upstash Kafka is used for the job of generating email embeddings. Generating email embeddings is done by a NodeJS Backend by consuming messages from Upstash Kafka topic.
- Clone the repository
- Install dependencies:
npm install
- Set up environment variables (refer to
.example.env
) - Run the development server:
npm run dev
The application includes various API routes for handling email-related operations, including AI-powered text generation for emails.
The server handles tasks such as generating email embeddings, which involves fetching emails, processing them, and storing the resulting embeddings in the database.
The main application is deployed on Vercel.
The backend server is deployed on Fly.io. Configuration details can be found in the Dockerfile
and fly.toml
files in the server directory.
This project is licensed under the MIT License. See the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.