Skip to content
Python script for generating email signatures from a single (HTML) template for all employees at once
Python HTML
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
LICENSE
README.mkd
data.cfg
generate.py
signature.template.html

README.mkd

email signature generator

Project Status: Inactive – The project has reached a stable, usable state but is no longer being actively developed; support/maintenance will be provided as time allows.

Python script for generating email signatures from a single (HTML) template for all employees at once

What it does

It reliefs you from the burden of manually editing large numbers of email signatures to update company, event, or employee information. Instead you update the information in the data set, the design of the template, and let the script generate the HTML signatures for all your employees.

data set
    +    -> script -> signatures
template

The included template is kept simple as it merily aims to show which placeholders can be used. Use an individual signature design by adding placeholders and renaming it to signature.template.html.

Use cases

This is the right tool for you, if a large number of employee email signatures have to be updated. The more often this happens, the more employees the company has, and the more information has to be changed in each signature, the more useful this tool will be for you.

Typical reasons for updating many email signatures at once:

  • Announcements, e.g. trade fairs or special offers.
  • Update of basic company information, e.g. company or department relocation, new CEO, company logo, or social media accounts.
  • The marketing department likes to continuously tweak the design of the signature.

Key features

  • Reuse of information
    Once information was entered in one section of the configuration it can be reused in any other section, e.g. a department's name and telephone number can be referenced for all employees of that department.

  • Optional free text
    Feel free to add role or employee specific text to all or selected signatures, e.g. the rates for calling the support team to the signatures of all support team members.

  • Optional line with mobile phone number
    Add a mobile phone number to records of people that have one and omit it for those who don't. The respective line will only be present in the signature of those employees, that actually have a mobile.

Available input fields

The following fields are customizable via the data set. Additional information such as an email disclaimer statement is best written directly into the template.

  • Company: company name, street, city, state, zip code, telephone, website, top executives, local court
  • Employee: first name, last name, department, telephone, mobile, fax, email, additional free form text

Getting started

$ ./generate.py

It requires Python v3.2 or later.

When you execute the script, it reads the data file with the company's and every person's contact details as well as the HTML signature template file. The HTML template defines the design of the final HTML signatures and contains placeholders for information stored in the data file. The script then replaces all placeholders with the company's and a person's respective information and saves the resulting HTML signature files to the output folder.

The data file uses an extended .ini format.

Contributing

This script currently provides minimal functionality and is suitable for production use. Have a look at the open issues for ideas on how to contribute. Furthermore, if you have a neat idea for a new feature or some other improvement, I am looking forward to receiving a pull request from you:

  1. Fork it
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit all your changes: git commit -am 'add some feature'
  4. Push to your feature branch: git push origin my-new-feature
  5. Submit a pull request

License

GNU General Public License v3.0

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, version 3, as published by the Free Software Foundation.

See LICENSE for details.

Comparable projects

Source

You can get the newest version from the project's website.

You can’t perform that action at this time.