dwyl / sendemail

💌 Simplifies reliably sending emails from your node.js apps using AWS Simple Email Service (SES)
182 stars 26 forks source link

Thoughts on working with Mailgun? #81

Open zemccartney opened 6 years ago

zemccartney commented 6 years ago

Hi there,

First off, thanks so much for this tool. It works great, makes sending templated emails super easy. I really appreciate all the work y'all put into this!

Would you consider supporting Mailgun?

I ask because I find Mailgun is more user friendly to setup and configure than SES. I don't have much concrete to say beyond that :) just anecdotally, based on limited experiences with both, Mailgun took less time and thought to configure than SES. One concrete-ish note: SES requires some knowledge of AWS (setting up users and perms on IAM) in addition to configuring the actual email service (this tripped me up the first time for a short bit the first time I set up SES); minor thing, just extra thought required to setup.

Minor, minor issues, for sure. I'd still turn to sendemail first for my next app project, Mailgun or no; just the flexibility to choose a lower-configuration service if the project didn't need any other AWS services, for example, would be nice is all. No biggie.

I'd love to volunteer to handle that work if it's of interest.

Thanks again! 🙏

nelsonic commented 6 years ago

Hi @zemccartney, Welcome to @dwyl and thank you for opening this issue! We aren't "married" to AWS SES at all! We use it because most of our clients/projects use AWS...

We are not averse to a Mailgun example or even supporting it as an option. (ignoring the name of the service, clearly invented by a "macho man"... 🙄 )

Their Pricing is reasonable: https://www.mailgun.com/pricing image

Unless you use their "Validations" service (to validate an email address), which is extortionate: image

If you have time to prepare a PR with Tests and Docs (instructions) we will very gladly accept it! We have made you a member of the org and given you (SSH) write access to this repo: https://github.com/dwyl/sendemail/invitations so you can prepare your work on a Branch off this repo (without having to fork it!)

Please be aware that we use this module extensively in "production" for a few of our clients so we are naturally a bit "precious" about the code that gets in so wherever possible follow the code style/patterns already present.

Thanks again (for taking an interest and opening the issue!). hope you have a great weekend! N 😉

zemccartney commented 6 years ago

Oh very cool! Thanks @nelsonic really appreciate you letting me jump on this and giving me easy access 🙏 Super pumped, looking forward to it!

And thanks for the additional notes on pricing and direction on PR quality. Absolutely, I'll start by sketching out a README update documenting what I'm thinking for this update, see if that's on the right track, then dig into the actual code and tests. Totally understand about being "precious" about the code :) I'll familiarize myself with the repo's style and patterns as best I can before writing anything.

Have a great weekend, too!

zemccartney commented 6 years ago

Hi @nelsonic

Here’s what I’ve got so far: https://github.com/dwyl/sendemail/blob/mailgun-integration/README.md

Just an updated README to hopefully quickly illustrate how I’m thinking of approaching this

In a nutshell:

How does this approach sound to you?

As for which Mailgun library I plan to use, I’ve found 2:

I’m leaning toward the independent dev’s library more or less only because it appears they’re actively maintaining that and would accept improvements / feedback if I discover any issues while testing (fingers-crossed not :) ), whereas the official library looks pretty inactive (last commit was ~1 year ago).

They’re comparable functionality-wise, so I figure either will work. Do you have a preference for one over the other?

Let me know whatever needs revising and I’ll jump right on it!

Hope you’re having a great weekend 🙏

nelsonic commented 6 years ago

@zemccartney looking good so far. 👍 if the "official" library works then use it. often the API of services does not get updated so there is no need to update the module.

zemccartney commented 6 years ago

@nelsonic very cool, all sounds good. Thanks for the feedback! 🙏

shaneparsons commented 5 years ago

Mailgun would be a great addition! Is the integration still in the works?

zemccartney commented 5 years ago

@shaneparsons hey! thanks for checking in here. It's in the works here: https://github.com/dwyl/sendemail/pull/83

Clearly, I spaced on completing that. I can try to wrap that up (merging in latest work, resolving merge conflicts, etc.) and submit that to the team here for review over the holidays. Should have some spare time then! 🙏 though feel free to pick up what I've started or "roll your own" if you see a less janky way of integrating :)

zemccartney commented 5 years ago

@shaneparsons just FYI, updated that PR, resolved that merge conflict, so it's back ready for review. 🙏