Open source · MIT

One company sign-off, on every email your team sends

An event-based Office.js add-in that adds your company's sign-off block to every new email: logo, address, website, social links, disclaimer and an optional campaign banner. Everyone gets the same block, and you change it for the whole team by editing one file.

How it works

  1. A user opens a new compose window in Outlook.
  2. Outlook fires the OnNewMessageCompose event.
  3. commands.js fetches signature.html from your static host.
  4. The signature is inserted with setSignatureAsync(), falling back to body.setAsync() on older builds.

Because the sign-off is fetched on each compose, you can change it by editing one file and pushing. Nobody needs to update their own Outlook settings, and you don't need to change the manifest or sideload the add-in again.

Who it's for

A consistent sign-off

Every email from the business ends with the same logo, contact details and legal disclaimer, however many people are sending.

Campaigns in every inbox

Swap in a seasonal sale, event or award banner once and it appears on everyone's emails straight away. Take it out just as easily.

Small teams, not one person

If you're the only person sending, pasting a template into your Outlook signature settings does the same job. This is worth it once there's a team to keep in line.

What the sign-off looks like

Kind regards,
Sam Taylor
Office Manager
Each person types their own name here. Everything below is added automatically.
Acme Co.
Acme Co. Ltd
12 High Street, Exampleton, EX1 2MP
LinkedIn  ·  Instagram  ·  Facebook
Winter sale: 20% off everything until 31 January. Shop now.
Acme Co. Ltd is registered in England and Wales, company no. 01234567. This email and any attachments are confidential. If you are not the intended recipient, please notify the sender and delete this message.

The block below the dashed line is the sample signature.html from the repo. Replace the logo, details, banner and disclaimer with your own before you deploy.

Where it runs

Windows

New Outlook for Windows, and classic Outlook on Windows 10 version 1903 or later.

Mac

New Outlook for Mac only. Classic Outlook for Mac doesn't support event-based activation.

Web

Outlook on the web, signed in with a Microsoft 365 account.

Classic Outlook for Windows builds older than Version 2403 can't run the async/await code in commands.js, so the signature won't appear there. The README explains the workaround.

What's in the repo

manifest.xmlThe add-in manifest. You sideload it into Outlook.
commands.jsThe event handler that fetches and inserts the signature.
signature.htmlThe company sign-off block. Edit this to change it for everyone.
_headersCORS headers so Outlook can fetch the files.
skills/Notes for extending the POC: per-user signatures, templating and caching.

Get started

  1. Fork or clone the repository.
  2. Edit signature.html with your company logo, name, address, website, social links and disclaimer. Add a campaign banner if you want one.
  3. Deploy the repo as a static site. The guide uses Cloudflare Pages on the free plan.
  4. Replace the YOUR_DOMAIN placeholders in manifest.xml and commands.js, and give the manifest a fresh GUID.
  5. In Outlook, go to Insert → Add-ins → My Add-ins → Add a Custom Add-in → Add from File and pick your manifest.xml.

The full deploy guide and troubleshooting notes are in the README.

Is DIY right for you?

This is the DIY end of the spectrum: one sign-off block for the whole team, nothing to run, and it's yours once you fork it. If you need different signatures per person or department, an admin dashboard or central deployment, have a look at a commercial platform such as SigHQ to see what that space looks like.