All Projects → jakobkmar → SimpleKotlinMail

jakobkmar / SimpleKotlinMail

Licence: Apache-2.0 license
A simple, coroutine based Kotlin Email API for both client- and server-side projects

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to SimpleKotlinMail

Docker Postfix
Simple SMTP server / postfix null relay host for your Docker and Kubernetes containers. Based on Alpine Linux.
Stars: ✭ 163 (+191.07%)
Mutual labels:  mail, smtp, smtp-server
MailDemon
Smtp server for mass emailing, managing email lists and more. Built on .NET Core. Linux, MAC and Windows compatible.
Stars: ✭ 113 (+101.79%)
Mutual labels:  mail, smtp, smtp-server
Sendria
Sendria (formerly MailTrap) is a SMTP server designed to run in your dev/test environment, that is designed to catch any email you or your application is sending, and display it in a web interface instead of sending to real world.
Stars: ✭ 30 (-46.43%)
Mutual labels:  mail, smtp, smtp-server
mailgrab
Simple and easy to use catch-all SMTP mail server and debugging tool
Stars: ✭ 92 (+64.29%)
Mutual labels:  mail, smtp, smtp-server
Tmail
Golang SMTP server
Stars: ✭ 251 (+348.21%)
Mutual labels:  mail, smtp, smtp-server
Inbucket
Disposable webmail server (similar to Mailinator) with built in SMTP, POP3, RESTful servers; no DB required.
Stars: ✭ 685 (+1123.21%)
Mutual labels:  mail, smtp, smtp-server
go-simple-mail
Golang package for send email. Support keep alive connection, TLS and SSL. Easy for bulk SMTP.
Stars: ✭ 298 (+432.14%)
Mutual labels:  mail, smtp, send-email
Mailslurper
Local, web-based mail server application. Slurp mails into oblivion!
Stars: ✭ 920 (+1542.86%)
Mutual labels:  mail, smtp, smtp-server
Hedwig
Send email to any SMTP server like a boss, in Swift and cross-platform
Stars: ✭ 1,096 (+1857.14%)
Mutual labels:  mail, smtp
Mailmergelib
MailMergeLib is a mail message client library which provides comfortable mail merge capabilities for text, inline images and attachments, as well as good throughput and fault tolerance for sending mail messages.
Stars: ✭ 97 (+73.21%)
Mutual labels:  mail, smtp
Mailinabox
Mail-in-a-Box helps individuals take back control of their email by defining a one-click, easy-to-deploy SMTP+everything else server: a mail server in a box.
Stars: ✭ 10,649 (+18916.07%)
Mutual labels:  mail, smtp
enough mail
IMAP, POP3 and SMTP clients for Dart developers. Contains both low level as well as a high level API.
Stars: ✭ 78 (+39.29%)
Mutual labels:  mail, smtp
Mailer
A lightweight PHP SMTP mail sender
Stars: ✭ 53 (-5.36%)
Mutual labels:  mail, smtp
Free Email Forwarding
The best free email forwarding for custom domains. Visit our website to get started (SMTP server)
Stars: ✭ 2,024 (+3514.29%)
Mutual labels:  mail, smtp
Docker Mailserver
Production-ready fullstack but simple mail server (SMTP, IMAP, LDAP, Antispam, Antivirus, etc.) running inside a container.
Stars: ✭ 8,115 (+14391.07%)
Mutual labels:  mail, smtp
Postal
✉️ A fully featured open source mail delivery platform for incoming & outgoing e-mail
Stars: ✭ 11,148 (+19807.14%)
Mutual labels:  mail, smtp
Neomutt
✉️ Teaching an Old Dog New Tricks -- IRC: #neomutt on irc.libera.chat
Stars: ✭ 2,343 (+4083.93%)
Mutual labels:  mail, smtp
Maddy
✉️ Composable all-in-one mail server.
Stars: ✭ 2,800 (+4900%)
Mutual labels:  mail, smtp
Mailu
Insular email distribution - mail server as Docker images
Stars: ✭ 3,151 (+5526.79%)
Mutual labels:  mail, smtp
go-smtp-mock
SMTP mock server written on Golang. Mimic any 📤 SMTP server behavior for your test environment with fake SMTP server.
Stars: ✭ 76 (+35.71%)
Mutual labels:  smtp, smtp-server

SimpleKotlinMail Logo

SimpleKotlinMail is a Kotlin Mail API, using coroutines and providing DSLs.

This project is not actively being worked on anymore, for an explanation and alternatives see #6 (comment) .

Features

  • build emails
  • send emails (using an external SMTP server)
  • receive and process emails
  • TLS support

To get started, visit the Documentation.

Examples

The purpose of the following code snippets is to provide an insight into the API. However, they are not suitable for learning the API, you should use the actual documentation for this.

Build

Build an email:

val email = emailBuilder {
    from("[email protected]")
    to("[email protected]")

    withSubject("Important question")
    withPlainText("Hey, how are you doing?")
}

Send

Send that email:

suspend fun main() = email.send()

Server / Receive

Create a custom SMTPServer:

val smtpServer = smtpServer {
    mailListener {
        println(it.email.plainText)
    }
}.start(keepAlive = true)

Convert

// EML String -> Email
string.toEmail()
// MimeMessage -> Email
mimeMessage.email

HTML

Inside the email builder, you can easily access kotlinx.html:

emailBuilder {
    withHTML {
        div {
            h1 { +"Really important question!" }
            p { +"Hey, how are you doing?" }
        }
    }
}

And more

To learn more about SimpleKotlinMail, visit the Documentation.

Project information

This project uses SimpleJavaMail to deal with java MimeMessages in a more elegant way. On the server side, this projects depends on a fork of SubEthaSMTP.

If you use the documented functionality of SimpleKotlinMail, everything will make use of kotlinx.coroutines.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].