Skip to main content

A utility to generate E-mail drafts from a list of E-mail addresses.

Project description

Email Generator

Installation (PyPI)

pip3 install email-draft-generator

Building from source

Install the build tool with pip and run python3 -m build to build the package.

Usage (command line)

The utility provides two command-line binaries: email-generator and email-list-parser.

email-generator

email-generator takes a JSON-formatted list of E-mail addresses and recipient names, formats them according to the template JSON, and uploads them to Gmail. To set up the Google API, run it once (you will need to provide a valid list of E-mail addresses for it to run), and it will guide you through setting this up. Most of the usage specifics are described in the usage help, which you can show by running email-generator -h.

email-list-parser

email-list-parser takes a CSV formatted list or a newline-seperated list of values and turn it into a JSON file which can be piped into email-generator.

Text file format

The values should be formatted as follows

Company Name 1
e-mail@company1.com
Company Name 2
e-mail@company2.com
Company Name 3
e-mail@company3.com
...

CSV format

The CSV file should have the keys in the order name,email

Template Format

The E-mail template is a JSON file with the following keys

Key Value
subject (formatted) E-mail subject
body (formatted) E-mail body
attachments (optional) Paths to any attachments that should be included

Formatted fields can include the following variables

Variable Data
{name} Company name
{email} Company E-mail

Installation (scripts)

Download the latest release as a tar.gz file.

Setup

Build program

Run setup.sh (can be run by simply double-clicking on the file).

Set up the template

Update the email template in data/template.json according to the template format.

Google API

Run the program once, and it will guide you through setting up the Google API.

Usage (scripts)

Prepare data

Copy and paste the table into data/email-list.txt.

Run the program

Run run.sh (can be run by double-clicking as well) The first time it is run, you will need to authenticate with the account that you want to upload the drafts to. A browser window should be opened automatically to do this in (if it is not, copy and paste the URL from the terminal window into your browser). The authentication flow may not work in Firefox or other Gecko-based browsers, so try Chrome, Safari, or another Chromium- or Webkit-based browser if it doesn't work for you.

Usage (GUI)

The utility provides two GUI binaries: email-generator-gui and email-template-editor-gui. These take no command line arguments.

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

email_draft_generator-0.1.2.tar.gz (174.9 kB view details)

Uploaded Source

Built Distribution

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

email_draft_generator-0.1.2-py3-none-any.whl (19.7 kB view details)

Uploaded Python 3

File details

Details for the file email_draft_generator-0.1.2.tar.gz.

File metadata

  • Download URL: email_draft_generator-0.1.2.tar.gz
  • Upload date:
  • Size: 174.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.5

File hashes

Hashes for email_draft_generator-0.1.2.tar.gz
Algorithm Hash digest
SHA256 2df08b89c93a656b8982714428de1f42f9a38fa1876458fed97f880303641594
MD5 018f64c4aae602b418204e9af30bb352
BLAKE2b-256 0d4a2a1223bbe4caf4218e15d06d9618833b4dd436f97230e72b4f7387232fc6

See more details on using hashes here.

File details

Details for the file email_draft_generator-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for email_draft_generator-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a2b707447ef07c41390aca8420afc94b62e9b3e1174ef259099ec3b9d6ddcaa5
MD5 c581c7f31c8009e0eaa3dbf97c6bc3ab
BLAKE2b-256 9e3dd2d50005ac0373f901341b13522fda389c5799786e6d945671f3aab58e03

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