Skip to content
πŸ’Œ mailgo, a different mailto: more possibilities, less spam (WIP)
Branch: master
Clone or download
Latest commit 1a3e648 May 21, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
assets new img asset May 20, 2019
dist v0.4.2 May 21, 2019
src fix some css bugs May 21, 2019
.gitignore aggiornato gitignore May 5, 2019
.npmignore added .DS_Store in npmignore May 13, 2019 v0.4.2 May 21, 2019
babel.config.js use of babel.config.js May 21, 2019
gulpfile.js use of babel.config.js May 21, 2019
package.json v0.4.2 May 21, 2019
yarn.lock ncu May 20, 2019

πŸ’Œ mailgo, a different mailto: more possibilities, less spam (WIP)

mailgo screencast

npm mailgo.min.js size mailgo.min.js size

docs: npm


mailgo will substitute all the mailto: links with the mailgo modal

mailgo modal


add at the end of the <body>

<script src=""></script>

you can also import mailgo in <head> using defer

<script src="" defer></script>

(note: the GitHub /dist folder is totally unstable, use unpkg to test mailgo, thanks!)


by default all the mailto: links will be enabled with mailgo automatically and will appear also cc, bcc, subject and body parameter, if provided

(to exclude a single mailto link add to the <a> element the class no-mailgo)

do you want to prevent the spam? Use a spam-less usage instead the default usage

spam-less usage #1 (recommended)

<a href="#mailgo" data-address="matteo" data-domain="">write me!</a>

  • add href="#mailgo" to <a>
  • add data-address and data-domain to re-create your email address

spam-less usage #2

<a class="mailgo" data-address="matteo" data-domain="">write me!</a>

  • add class="mailgo" to <a>
  • add data-address and data-domain to re-create your email address

spam-less usage #3

<a mailgo data-address="matteo" data-domain="">write me!</a>

  • add the attribute mailgo to <a>
  • add data-address and data-domain to re-create your email address

cc, bcc, body, subject and multiple email addresses

mailgo also supports cc, bcc, subject and body in spam-less installation using the parameters:

  • data-cc-address and data-cc-domain to recreate cc: data-cc-address@data-cc-domain
  • data-bcc-address and data-bcc-domain to recreate bcc: data-bcc-address@data-bcc-domain
  • data-subject for the subject of the email
  • data-body for the body of the email

for the default installation you can use the classic mailto parameters and they will appear in the modal

mailgo doesn't support multiple email addresses in to, cc and bcc at the moment, but there is an issue for this!

keyboard commands

from mailgo 0.4.0, when a mailgo modal is showing, there are also keyboard commands that can perform different actions

  • pressing g perform the open in Gmail action
  • pressing o perform the open in Outlook action
  • pressing spacebar or enter perform the open default action
  • pressing c perform the copy action


this is a complete mailgo example with the spam-less usage #1 (and cc, bcc, subject and body):

<a href="#mailgo" data-address="matteo" data-domain="" data-cc-address="matteomanzinello" data-cc-domain="" data-bcc-address="hello" data-bcc-domain="" data-subject="A strange email" data-body="This email is for me with me also in cc and in bcc">write me!</a>

This is a more simple example (also with spam-less #1 usage):

<a href="#mailgo" data-address="matteo" data-domain="">write me!</a>

browsers support (WIP)

"browserslist": "> 0.25%, not dead"

see the compatibility of mailgo on

connected projects

mailgo Chrome extension (WIP)

mailgo React component (WIP)

mailgo WordPress plugin (WIP)

open source helpers

Open Source Helpers


You can’t perform that action at this time.