Marten Sendgrid Emailing provides a Sendgrid backend that can be used with Marten web framework's emailing system.
Simply add the following entry to your project's shard.yml:
dependencies:
marten_sendgrid_emailing:
github: martenframework/marten-sendgrid-emailingAnd run shards install afterward.
First, add the following requirement to your project's src/project.cr file:
require "marten_sendgrid_emailing"Then you can configure your project to use the Sendgrid backend by setting the corresponding configuration option as follows:
Marten.configure do |config|
config.emailing.backend = MartenSendgridEmailing::Backend.new(api_key: ENV.fetch("SENDGRID_API_KEY"))
endThe MartenSendgridEmailing::Backend class needs to be initialized using a Sendgrid API key. You should ensure that this value is kept secret and that it's not hardcoded in your config files.
If needed, it should be noted that you can enable Sendgrid sandbox mode when initializing the backend object by setting the sandbox_mode argument to true:
Marten.configure do |config|
config.emailing.backend = MartenSendgridEmailing::Backend.new(api_key: ENV.fetch("SENDGRID_API_KEY"), sandbox_mode: true)
endMorgan Aubert (@ellmetha) and contributors.
MIT. See LICENSE for more details.