EmailFlow is a robust email marketing automation tool designed to streamline your marketing campaigns. With EmailFlow, you can automate the sending of emails, manage your email lists effortlessly, and grow your audience through effective sign-up forms.
- Automatic Email Sending: Send emails to your entire list or specific segments with a single click.
- Email List Management: Easily read and import existing email lists provided by users and store them in memory.
- Add New Email Addresses: Seamlessly add new email addresses to your list.
- Newsletter Sign-Up Forms: Create and manage sign-up forms to capture new customer emails directly.
Before you begin, ensure you have the following:
- Python 3.7 or higher
- Access to your email service provider's API (e.g., SendGrid, Mailgun)
To install EmailFlow, use pip:
pip install emailflow
-
API Keys: Store your email service provider API keys in environment variables.
export EMAIL_API_KEY='your_email_api_key'
-
Configuration File: Create a configuration file
config.yaml
with your settings.email_service: provider: 'SendGrid' api_key: 'your_email_api_key'
-
Initialize the EmailFlow Client:
from emailflow import EmailFlow config_path = 'config.yaml' emailflow = EmailFlow(config_path)
-
Send an Email with a Click:
emailflow.send_email( subject='Monthly Newsletter', from_email='noreply@yourbusiness.com', template_id='newsletter_template' )
-
Read and Import Existing Email List:
email_list = ['customer1@example.com', 'customer2@example.com'] # Example list emailflow.import_email_list(email_list)
-
Add New Email Addresses:
new_emails = ['newcustomer@example.com'] emailflow.add_emails(new_emails)
-
Set Up a Newsletter Sign-Up Form:
sign_up_form = emailflow.create_sign_up_form( form_name='Newsletter Sign-Up', fields=['name', 'email'], success_message='Thank you for signing up!' )
-
Retrieve Emails from Sign-Up Forms:
sign_ups = emailflow.get_sign_up_emails(form_name='Newsletter Sign-Up')
EmailFlow provides tools to help you stay compliant with various data protection regulations:
- Consent Management: Track and manage customer consents.
- Unsubscribe Handling: Automatically handle unsubscribe requests.
- Data Protection: Ensure data is stored and processed securely.
We welcome contributions to EmailFlow. Please follow these steps to contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Make your changes and commit them (
git commit -m 'Add new feature'
). - Push to the branch (
git push origin feature-branch
). - Open a pull request.
EmailFlow is licensed under the MIT License. See the LICENSE file for more details.
For support or inquiries, please contact us at support@yourbusiness.com.
With EmailFlow, streamline your email marketing campaigns and engage your customers like never before. 🚀