Status: Under Construction 🚧
This project is an email-to-Notion integration service designed to forward emails to a Notion database. It fetches emails, processes their content, and then programmatically adds them as entries to a specified Notion database. This service is particularly useful for organizing emails, archiving important messages, or integrating email content into a Notion-based workflow.
- Email Fetching: Retrieve emails using IMAP protocol.
- Content Processing: Parse and convert email content (HTML/plain text) into Markdown or a suitable format for Notion.
- Notion Integration: Automate the addition of email contents to a Notion database.
- Attachments Handling: Manage email attachments appropriately within the Notion database.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
- Node.js
- npm or yarn
- Notion account and API access
-
Clone the repository:
git clone https://github.com/your-username/forward-email-to-notion.git
-
Navigate to the project directory:
cd forward-email-to-notion
-
Install dependencies:
npm install
-
Set up environment variables by creating a
.env
file with the following content (update values accordingly):NOTION_API_KEY=<your_notion_api_key> GMAIL_USER=<your_email> GMAIL_PASSWORD=<your_email_password>
Status: Under Construction 🚧
Before deploying with Terraform, set the required environment variables by running:
This will load the variables from your .env
file and set them for the current shell session, making them available for Terraform commands.
./scripts/set-env.sh
To deploy the infrastructure, run:
npm run prepare-deploy
# this will initialize terraform with .env files and build the projectterraform plan
terraform apply
### Usage
**Status:** Under Construction 🚧