middleman-protect-emails
middleman-protect-emails is a Middleman extension that encrypts email links on your page on the server-side and decodes them on the client-side, avoiding spam bots with no visible impacts to your users.
This gem makes use of the ROT13 encryption algorithm to encrypt email links. Users must have Javascript enabled on their computers for the decoding stage to work.
Installation
Add this line to your Middleman application's Gemfile:
gem 'middleman-protect-emails'
And then run:
$ bundle
Usage
Using this gem is as simple as adding the following line to your project's config.rb
file:
activate :protect_emails
And that's it! This will now protect all mailto
links in your Middleman project.
How it Works
If the middleware detects a mailto
link on your page, it will automatically replace the link with an encrypted hash and insert a small script at the end of the page for the browser to decode it on page load. For example, if the following code was on one of your pages:
<a href='mailto:[email protected]'>Link</a>
It would automatically be replaced with:
<a href='#[email protected]'>Link</a>
This extension also encrypts link parameters (ex. mailto:[email protected]?subject=Some%20Subject
).
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new pull request