Skip to main content

A handy CLI tool for bulk-sending emails

Project description

Mailipy Logo

Mailipy

This is a software to make the task of sending bulk emails to a list of contacts easier.

Installation

$ pip install mailipy

In order to send emails, you need to first generate them and later send them.

Generating emails

You need to prepare a template.md file which must have a YAML front matter (similarly to what you find in Jekyll). See the example for the keywords required in the front matter.

The command to create the emails is the following:

$ mailipy-gen template.md contacts.csv

This will create as many emails as there are records in contacts.csv. The emails will be stored in outbox/ by default. You can use a third parameter to change the outbox destination folder.

Sending emails

Once you created the emails, run the following command (changing the outbox directory accordingly):

$ mailipy-send mail.example.com:528 my_username outbox

The command will inform you of how many emails are going to be sent, and then will prompt you for a password.

Contributing

You can make changes to the gen.py and send.py scripts, and test these changes by running a local version of Mailipy. After testing your changes, you can open a pull request.

Running a local version of Mailipy

  1. Make sure you have poetry installed in your system.
  2. Run poetry install followed by poetry shell from the root of the source directory.
  3. Now you can run mailipy-gen and mailipy-send, and these will include your local changes. You can verify that you're running a different binary than the globally installed one by running which mailipy-gen: the command will return the full path of the binary you're using.

Running tests

After installing with poetry install and entering the poetry shell, run the following:

$ pytest

The command will search recursively for files named *_test.py and run them. See the pytest documentation.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mailipy-0.1.0.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mailipy-0.1.0-py3-none-any.whl (9.5 kB view details)

Uploaded Python 3

File details

Details for the file mailipy-0.1.0.tar.gz.

File metadata

  • Download URL: mailipy-0.1.0.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.5 CPython/3.13.1 Darwin/23.6.0

File hashes

Hashes for mailipy-0.1.0.tar.gz
Algorithm Hash digest
SHA256 3529c4c010951d2f60c9acbd907f20ec39181ebe88bb1394bb016588958103c9
MD5 ee0f8e5b55c89c0b79c75b2f5b888924
BLAKE2b-256 4e119017e05485992036d0e192006e7c4147428e1203d962c658700362d2b174

See more details on using hashes here.

File details

Details for the file mailipy-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: mailipy-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 9.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.5 CPython/3.13.1 Darwin/23.6.0

File hashes

Hashes for mailipy-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 377832c4c9fb03a543cae55bee35e96eff1dec9b823c0fb330ff2caa021ccf52
MD5 968fd10148c7d013552763db453b66f7
BLAKE2b-256 58aaa196d398da07f7a5e4308a12d81ad3bddccf7d9294866b42b1e1c1a33069

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page