Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/martenframework/marten-smtp-emailing

An SMTP emailing backend for the Marten web framework.
https://github.com/martenframework/marten-smtp-emailing

crystal email emailing framework marten smtp web

Last synced: about 1 month ago
JSON representation

An SMTP emailing backend for the Marten web framework.

Awesome Lists containing this project

README

        

# Marten SMTP Emailing

[![CI](https://github.com/martenframework/marten-smtp-emailing/workflows/Specs/badge.svg)](https://github.com/martenframework/marten-smtp-emailing/actions)
[![CI](https://github.com/martenframework/marten-smtp-emailing/workflows/QA/badge.svg)](https://github.com/martenframework/marten-smtp-emailing/actions)

**Marten SMTP Emailing** provides an SMTP backend that can be used with Marten web framework's [emailing system](https://martenframework.com/docs/emailing).

## Installation

Simply add the following entry to your project's `shard.yml`:

```yaml
dependencies:
marten_smtp_emailing:
github: martenframework/marten-smtp-emailing
```

And run `shards install` afterward.

## Configuration

First, add the following requirement to your project's `src/project.cr` file:

```crystal
require "marten_smtp_emailing"
```

You can then configure your project to use the SMTP backend by setting the corresponding configuration option as follows:

```crystal
Marten.configure do |config|
config.emailing.backend = MartenSMTPEmailing::Backend.new
end
```

By default, the backend will attempt to deliver emails to an SMTP server running on localhost and listening on the standard SMTP port (25). If you need to, you can change these backend properties at initialization time:

```crystal
Marten.configure do |config|
config.emailing.backend = MartenSMTPEmailing::Backend.new(
host: "localhost",
port: 25,
helo_domain: "localhost",
use_tls: true,
username: nil,
password: nil
)
end
```

## Authors

Morgan Aubert ([@ellmetha](https://github.com/ellmetha)) and
[contributors](https://github.com/martenframework/marten-smtp-emailing/contributors).

## License

MIT. See ``LICENSE`` for more details.