An app built using Node.js, Express, and MongoDB that allows users to manage their email subscriptions. The app features a login system, IMAP mailbox integration, and email storage in MongoDB.
The application is built using the following technologies:
- Backend: Node.js with Express framework
- Database: MongoDB with Mongoose ORM
- Email Fetching: IMAP client library
- Frontend: EJS view engine, Bootstrap for styling, Vanilla JavaScript for client-side interactions
- /server.js: Main server file
- /.env: Environment configuration file
- /package.json: Project dependencies and scripts
- /models: Mongoose schemas for User, Email, and ImapAccount
- /routes: Express routes for authentication and IMAP operations
- /services: Service for handling IMAP functionality
- /views: EJS templates for rendering views
- /public: Static files (CSS, JS)
- User Authentication:
- Registration and login system with session management.
- IMAP Mailbox Integration:
- Users can add their IMAP mailbox details.
- The app connects to the IMAP server and fetches all emails from the inbox.
- Email Storage:
- Fetched emails are stored in MongoDB.
- Email information includes sender, recipient, subject, date, body, and attachments.
- Node.js
- MongoDB
- Clone the repository:
git clone <repository-url>
- Navigate to the project directory:
cd unsubme
- Install dependencies:
npm install
- Set up the
.env
file:cp .env.example .env # Edit the .env file with your configuration
- Start the application:
npm start
- Open your browser and navigate to
http://localhost:3000
- Start the application:
npm run dev
Copyright (c) 2024.