Dovel website repository.
Author: blmayer (bleemayer@gmail.com)
Date: Fri Sep 22 01:16:24 2023 -0300
Added index page
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..7d6945f
--- /dev/null
+++ b/index.html
@@ -0,0 +1,168 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <title>dovel email</title>
+ <meta charset="UTF-8">
+ <meta name="author" content="Brian Lee Mayer">
+ <meta name="description" content="Dovel is a simple and extensible SMTP server that let's you send and receive email using a self hosted instance with minimum configuration. Dovel is free and open source software written in Go.">
+ <meta name="language" content="english">
+ <meta name="keywords" content="email, dovel, blmayer, self host, software, smtp, web, interface">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <meta name="color-scheme" content="light dark">
+ <style>
+body {
+ max-width: 600px;
+ margin: 60px auto;
+ padding: 20px;
+ font-family: sans-serif;
+}
+
+pre {
+ font-weight: bold;
+ background: lightgray;
+ padding: 8px;
+ border-radius: 8px;
+}
+
+ol li {
+ padding-bottom: 10px;
+}
+
+tt {
+ font-weight: bold;
+}
+
+@media (prefers-color-scheme: dark) {
+ pre {
+ background: darkslategray;
+}
+ </style>
+</head>
+<body>
+ <center>
+<pre style="background:none">
+_________ ______
+______ /________ _________ /
+_ __ /_ __ \_ | / / _ \_ /
+/ /_/ / / /_/ /_ |/ // __/ /
+\__,_/ \____/_____/ \___//_/ ________
+ | ~~ # |
+ | --- |
+ '--------'
+
+
+
+</pre>
+ <i>Self host your email in 5 easy steps.</i>
+ <p>
+ <a href=https://goreportcard.com/report/blmayer.dev/x/dovel><img src=https://goreportcard.com/badge/blmayer.dev/x/dovel></a>
+  
+ <a href=https://pkg.go.dev/blmayer.dev/x/dovel><img src=https://pkg.go.dev/badge/blmayer.dev/x/dovel.svg></a>
+ </p>
+ </center>
+
+ <h2>About</h2>
+ Dovel is a SMTP server that sends and receives emails acording to a
+ simple configuration file. It also comes with an optional web interface
+ that you can use to browse your emails. It is designed to be simple and
+ easy to use, and will remain so. Dovel is great because:
+
+ <ul>
+ <li>
+ Is lightweight: Uses only a few MBs of RAM and loads
+ pages super fast.
+ </li>
+ <li>Is easy to configure: Needs just one JSON file.</li>
+ <li>Is easy to use: The design is simple and extensible.</li>
+ <li>Supports DKIM</li>
+ <li>Supports PGP using the WKD standard</li>
+ </ul>
+ This project is under the BSD-3-Clause license, its code can be found
+ in our <a href=//git.derelict.garden/dovel/email>git repository</a>.
+
+ <h3>Roadmap</h3>
+ Dovel is in early stages and in active development, this means there
+ is a lot to be done. The major features planned are as follows:
+ <ul>
+ <li><s>Support DKIM.</s></li>
+ <li><s>Multiple inboxes.</s></li>
+ <li><s>PGP support.</s></li>
+ <li><s>Multiple users.</s></li>
+ <li>Create http and ssh clients.</li>
+ </ul>
+
+ The detailed development features and progress can be found on our
+ <a href=//git.derelict.garden/dovel/email/files/TODO.txt>TODO</a> file.
+
+ <h2>Installation</h2>
+ To install <tt>dovel</tt> you need <tt>go</tt> propperly installed and
+ a port available, this guide works for MacOS, Linux and BSD systems.
+ <ol>
+ <li>
+ Install dovel by running:
+ <tt>go install git.derelict.garden/dovel/email/cmd/dovel@v0.9.0</tt>.
+ </li>
+ <li>
+ Configure dovel by creating the configuration file, an
+ example is provided below. Running <tt>dovel</tt>
+ is enough to start.
+ </li>
+ <li>
+ Configure your MX record in your domain registrar to
+ point to your server. This is needed to receive email.
+ </li>
+ <li>
+ Configure other DNS records as you wish in your domain
+ registrar such as PTR, SPF, DKIM or DMARC to improve
+ sending emails. Dovel supports DKIM by passing the key
+ path in the configuration file.
+ </li>
+ <li>
+ Create the handlers you want for each domain. This is
+ explained below.
+ </li>
+ </ol>
+
+ <h3>Example configuration</h3>
+ The following configuration is enought to receive emails: Dovel needs
+ the file <tt>~/.config/dovel/config.json</tt> is order to work
+ correctly, otherwise it will use default settings which may not
+ suit you. The field <i>vaultFile</i> is optional for receiving emails.
+ <pre>{
+ "port": "8000",
+ "domain": "dovel.email",
+ "vaultFile": "users.json"
+}</pre>
+
+ Dovel can handle email for different domains, so you can have multiple
+ inboxes. To achieve this handler files must be created in the
+ <kbd>~/.config/dove/hooks/</kbd> folder. The program will run the
+ corresponding hook passing the email as standard input. For example:
+ suppose your domain is <i>dovel.email</i>, emails addressed to
+ <i>joe@dovel.email</i> will be handled by a hook named
+ <kbd>reveive-dovel.email</kbd> and emails sent by this email are
+ handled by <kbd>send-dovel.email</kbd> likewise.
+
+ <p>
+ To see all options please refer to the
+ <a href=//pkg.go.dev/git.derelict.garden/dovel/email> go docs</a>.
+ </p>
+
+ <h2>Using</h2>
+ Using <tt>dovel</tt> email server is meant to be super easy: the server
+ uses the configuration above, you can add the vault file in order to
+ authenticate users that want to send emails. After creating the config
+ file, simply run <kbd>dovel</kbd> to start the server.
+
+ <h2>Contributing</h2>
+ Sending bug reports, starting discussions and sending patches can be
+ done easily by email, this project follows the convention defined
+ on <a href=//git.derelict.garden>derelict garden's git</a>.
+
+ <p>
+ Financial support is also greatly appreciated, you can donate
+ any amount by using this <a href=//ko-fi.com/blmayer>ko-fi</a>
+ link. Thank you!
+ </p>
+</body>
+</html>