docs: add for ideas,features,notes

Manos Pitsidianakis 2 weeks ago
parent 6b2c88a44f
commit 9dc62504c6
Signed by: Manos Pitsidianakis
GPG Key ID: 7729C7707F7E09D0

@ -0,0 +1,77 @@
# Ideas, plans, thoughts on `mailpot`.
It'd be better if this stuff wasn't on an issue tracker like gitea's or
github's but committed in the repository.
Discussion about these notes can take place in the mailing list,
In no particular order:
**Table of contents**:
* [Possible Postfix integrations](#possible-postfix-integrations)
* [Setup docker container network with postfix for testing](#setup-docker-container-network-with-postfix-for-testing)
* [Add NNTP gateways](#add-nntp-gateways)
* [Add MIME type filter for list owners](#add-mime-type-filter-for-list-owners)
* [Add `convert_html_to_plaintext` filter](#add-convert_html_to_plaintext-filter)
* [Use mdoc instead of roff for manpages](#use-mdoc-instead-of-roff-for-manpages)
* [Add shell completions with `clap`](#add-shell-completions-with-clap)
* [Make complex database logic and/or complex migrations with user defined functions](#make-complex-database-logic-andor-complex-migrations-with-user-defined-functions)
* [Implement dtolnay's mailing set concept](#implement-dtolnays-mailing-set-concept)
## Possible Postfix integrations
- local delivery with `postdrop(1)` instead of SMTP
- log with `postlog(1)`
- sqlite maps <>
## Setup docker container network with postfix for testing
Beyond integration tests, we need a real-world testcase: a bunch of user postfixes talking to a mailing list postfix.
This can be done with a docker setup.
A simple debian slim image can be used for this.
Reference for postfix on docker: <>.
It'd be great if we could use a Rust based solution as well, with something like <>.
## Add NNTP gateways
## Add MIME type filter for list owners
## Add `convert_html_to_plaintext` filter
## Use mdoc instead of roff for manpages
[`mdoc` reference](
- Got ownership of `mdoc` on
- Forked `roff` crate to use as a basis: <>
## Add shell completions with `clap`
Probably with <>
## Make complex database logic and/or complex migrations with user defined functions
Useful projects:
- <>
- <>
## Implement dtolnay's mailing set concept
See <>
> A mailing list server that treates mailing lists as sets and allows mail to
> be sent to the result of set-algebraic expressions on those sets. The union,
> intersection, and difference operators are supported. Sending mail to a set
> operation involves specifying a set expression in the local part of the
> recipient email address.