Skip to content

Cut through email overload with our AI-powered solution that intelligently summarizes and categorizes messages, bringing clarity to your communications.

Notifications You must be signed in to change notification settings

EmailEssence/EmailEssence.github.io

Repository files navigation

EmailEssence

An intelligent email companion designed to enhance productivity through AI-powered email management and summarization.

Overview

EmailEssence is a sophisticated email management solution that leverages artificial intelligence to transform how users interact with their inboxes. By providing intelligent email summarization, clutter-free reading experiences, and smart prioritization, EmailEssence helps users focus on what matters most in their communications.

Key Features

MVP Features

  • 🔐 Secure OAuth 2.0 authentication with email providers
  • 🤖 AI-powered email summarization
  • 📧 Clean, clutter-free reader view
  • 📱 Responsive web interface
  • ⚡ Real-time email processing

Feature Complete (FC) Features

  • 🎨 Customizable dashboard with modular components
  • 🔍 Advanced keyword analysis and topic identification
  • 🔄 Incremental email fetching for large inboxes
  • 🎯 Smart email prioritization
  • 🛠️ Enhanced user preferences and settings

Future Features

  • 💻 Cross-platform desktop support via Electron

Technical Stack

Frontend

  • React - Modern UI framework
  • Vite - Frontend tooling and build server
  • JavaScript - Core language for the frontend

Backend

  • Python - Core backend services
  • FastAPI - High-performance API framework
  • MongoDB - Flexible document database
  • Redis - High-performance caching
  • Flexible AI provider support (OpenAI, Google, OpenRouter)

Infrastructure

  • OAuth 2.0 - Secure authentication
  • IMAP - Email protocol support

Getting Started

Prerequisites

  • Node.js (v18 or higher)
  • Python (v3.12 or higher)
  • MongoDB
  • Redis
  • UV Package Manager (for Python dependency management)

Installation

Environment Variables

Create a .env file in the backend directory using .env.example as a template:

Backend Setup

We use UV (https://astral.sh/uv) for Python package management. Choose your platform:

Windows
# Run the PowerShell setup script
.\backend\setup.ps1
Linux/macOS
# Run the bash setup script
chmod +x backend/setup.sh
./backend/setup.sh

The setup scripts will:

  1. Install UV if not present
  2. Create a virtual environment
  3. Install all development dependencies
  4. Set up environment variables

Frontend Setup

cd frontend
npm install

Development

Starting the Backend

cd backend
uvicorn main:app --reload

Starting the Frontend

cd frontend
npm run dev

Documentation

Contributing

TODO

License

TODO

Authors

  • Emma Melkumian
  • Joseph Madigan
  • Shayan Shahla
  • Ritesh Samal

About

Cut through email overload with our AI-powered solution that intelligently summarizes and categorizes messages, bringing clarity to your communications.

Topics

Resources

Stars

Watchers

Forks

Contributors 5