Still Maintained

Self-hosted Communication - Email - Complete Solutions: what licence are you actually agreeing to

“Self-hosted” and “open source” are not the same promise, and the lists that recommend these projects rarely separate them. This page sorts 19 communication - email - complete solutions projects by the licence you are actually agreeing to, as read on 2026-08-20.

8 of 19 are permissive: run them, change them, keep your changes to yourself. 1 is AGPL, where serving a modified copy over a network obliges you to publish those changes, which is the clause that catches people who self-host for a team. 1 is not open source at all, carrying a proprietary or restricted-use licence. The remaining 9 are ordinary copyleft.

ProjectLicenceWhat that meansStarsMaintenanceLanguage
docker-mailserverMITPermissive, no strings18,763ActiveShell
PostalMITPermissive, no strings16,745ActiveRuby
Mail-in-a-BoxCC0-1.0Permissive, no strings15,389ActivePython
MailuMITPermissive, no strings7,462ActivePython
SimpleLoginMITPermissive, no strings6,933ActivePython
MoxMITPermissive, no strings5,817ActiveGo
AnonAddyMITPermissive, no strings4,809ActivePHP
ModoboaISCPermissive, no strings3,530ActivePython
MailcowGPL-3.0Copyleft, publish your changes13,301ActiveJavaScript
Maddy Mail ServerGPL-3.0Copyleft, publish your changes6,069ActiveGo
wildduckEUPL-1.2Copyleft, publish your changes2,109ActiveJavaScript
iRedMailGPL-3.0Copyleft, publish your changes1,838ActiveShell
DebOpsGPL-3.0Copyleft, publish your changes1,417ActiveJinja
b1gMailGPL-2.0Copyleft, publish your changes-Not measuredPHP
DovelLGPL-3.0Copyleft, publish your changes-Not measuredGo
InboxenGPL-3.0Copyleft, publish your changes-Not measuredPython
Simple NixOS MailserverGPL-3.0Copyleft, publish your changes-Not measuredNix
Stalwart Mail ServerAGPL-3.0AGPL, network copyleft14,274ActiveRust
Forward EmailBUSL-1.1, MPL-2.0Not open source, restricted use1,662ActiveJavaScript

What the licence column means

The Maintenance column is a second, independent check: the age of the most recent commit on the default branch, read from the GitHub API on 2026-08-20. Active is within 180 days, Slowing is 180 to 365, Dormant is over a year, Archived means the maintainer marked the repo read-only, and Not measured means the project is hosted outside GitHub so the check does not apply.

Source data from awesome-selfhosted-data, used under CC BY-SA 3.0. Licence family grouping and maintenance status are computed by this site (from the upstream licence fields and the GitHub API) and are not part of the upstream dataset. Licence classification is a summary, not legal advice: check the project’s own LICENSE file before you rely on it. This page is published under the same licence.