Skip to content
An open source email campaign management tool for nonprofits
Branch: master
Clone or download
lukecamelo and zhakkarn on client side, CSV Import no longer requires 'email' to be case sens…
…itive

* E-mail CSV import no longer case sensitive, can accept special characters

* Removed console log and generated CSV file

* Updated ImportCSV error message to match new spelling parameters

* CSV import no longer case sensitive, email can also be spelled as e-mail

* CSV Import no longer requires 'email' to be case sensitive, can be written with a dash e.g. E-mail
Latest commit 0ef3a31 Aug 7, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
client on client side, CSV Import no longer requires 'email' to be case sens… Aug 7, 2018
config Edit deploy docs Sep 11, 2017
docs
public
server on client side, CSV Import no longer requires 'email' to be case sens… Aug 7, 2018
tools
utility
.babelrc Implement basic subscriber importing from csv Sep 17, 2016
.dockerignore
.env.example change .env.example as Google+ auth is now opt in May 25, 2018
.eslintrc Set env to es6 in .eslintrc to prevent linting on e.g. Promises Jul 13, 2017
.gitignore add helper script to make old instances do Google+ auth==>classical auth May 25, 2018
.osfg-dir-config.js Minor change to trigger build Aug 23, 2017
.sequelizerc
CONTRIBUTING.md Create CONTRIBUTING.md Oct 13, 2016
Dockerfile
LICENSE.md
README.md remove redundant link to the setup video May 28, 2018
docker-compose.yml
package-lock.json on client side, CSV Import no longer requires 'email' to be case sens… Aug 7, 2018
package.json
webpack.config.build.js
webpack.config.dev.js

README.md

Mail for Good

Join the chat at https://gitter.im/FreeCodeCamp/mail-for-good

Please be aware that Mail for Good is currently in beta.

Looking to contribute? Read our developer setup guide.


Image showing Mail 4 Good

An app for sending millions of emails as cheaply as possible. Mail for Good uses AWS Simple Email Service to send bulk emails at $0.10 per 1000 emails.

Mail for Good is fast and memory efficient, currently sending over 100 emails per second on a 1gb Digital Ocean VPS.

We've used Mail for Good to deliver newsletters to hundreds of thousands of campers per week.

Sounds good? Give it a try!

Deploy

"My instance is deployed, what now?"

In setting_up.md you'll find how to connect, create your admin account and set up your AWS credentials allowing you to send your first blast.

What does Mail for Good do?

With Mail for Good you can:

  • Send email campaigns of unlimited size.
  • Import emails saved in CSV format.
  • Create templates to reuse for convenience when sending email campaigns.
  • Track bounce rate and other standard metrics. You can also insert tracking pixels and unsubscribe links at the click of a button.
  • Add custom fields to imported email lists such as names or cities.
  • Grant other users (limited or otherwise) permissions to use your account on your behalf.
  • Add embedded HTML newsletter sign up forms to your site. These are snippets of code that will let your users sign up with you at the click of a button.

Performance

We're currently sending weekly email blasts of over 800,000 emails in 4 hours on a $10 per month Digital Ocean VPS with 1gb memory and 1 core processor.

Mail for Good is fast and scales to the rate limit enforced by AWS.

Why are we doing this?

We want to help nonprofits manage their email campaigns as inexpensively as possible, and have full control over their data.

How to install locally

local deployment guide.md.

Troubleshooting

We're keen to tackle any issues people encounter. If you experience any problems, please create an issue and we'll get back to you.

How to contribute

Found a bug? Please let us know by creating an issue.

We warmly welcome contributions from anyone. Check out our how to contribute section to find out how you can do so.

License

Copyright (c) 2018, freeCodeCamp.

This computer software is licensed under the BSD-3-Clause.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.