MailVoyage is a modern, developer-friendly email client designed to simplify email management and testing. It provides a unified platform for sending, receiving, and testing emails across multiple providers, all in one place. Built with React, TypeScript, and Vite, MailVoyage is optimized for performance, scalability, and ease of use. The application supports serverless deployments, making it ideal for integration with platforms like Vercel.
- Email Testing: Test emails with real SMTP configurations and preview them in a user-friendly interface.
- Multi-Provider Support: Configure and test emails from various providers like Gmail, SMTP2Go, and others.
- Advanced Search: Filter emails by sender, subject, date range, attachments, and more.
- Serverless Integration: Deploy the backend API seamlessly on Vercel for serverless environments.
- Unified Inbox: Manage emails from multiple providers in one place.
- Email Sending: Send emails with attachments, priority settings, and advanced formatting.
- Folder Management: Create, list, and organize email folders.
- Dark Mode: Enjoy a modern UI with light and dark theme support.
- Frontend: React, TypeScript, TailwindCSS, Framer Motion
- Backend: Node.js, Express, PostgreSQL
- Email Services: Nodemailer, ImapFlow
- Validation: Zod for schema validation
- Deployment: Vercel for serverless backend and frontend hosting
- Node.js (v16 or higher)
- PostgreSQL (for local development)
- Clone the repository:
git clone https://github.com/navaranjithsai/MailVoyage.git
cd mailvoyage- Install dependencies:
npm install
npm run install:api- Set up environment variables:
- Create
.envfiles inapidirectory. - Refer to
.env.examplefor required variables.
- Start the development server:
npm run devMailVoyage is optimized for serverless environments. To deploy on Vercel:
- Link the repository to your Vercel account.
- Configure environment variables in the Vercel dashboard.
- Deploy the frontend and backend as separate projects or as a monorepo.
POST /auth/register: Register a new user.POST /auth/login: Log in to the application.POST /auth/forgot-password: Request a password reset.- More API Request like email-accounts, smtp-accounts, which embedded in mailvoyage
POST /mail/send: Send an email.GET /mail/fetch: Fetch emails from a mailbox.POST /mail/config: Configure mail server settings.
We are currently prioritizing the implementation and refinement of key features to enhance the MailVoyage experience. Our main areas of focus include:
- Dashboard Stats: Fixing and improving the accuracy, display, and real-time updates of email statistics on the dashboard.
- Entire Dashboard Actions: Refining user interactions, such as email management, folder operations, and overall dashboard responsiveness.
If you are a developer interested in contributing to these ongoing efforts or have suggestions for other features, please refer to the Contributing section below or start a discussion in the repository.
We welcome contributions to MailVoyage! To get started:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Submit a pull request with a detailed description.
MailVoyage is open-source and licensed under the MIT License.
For questions or support, start a discussion in the Discussion tab.
Tech4File - Simplifying Tech for Developers and Users