GeilMail
A word of warning
Please note that GeilMail is very much work in progress. There are tons of ugly code (first make it work, then make it nice), documentation is lacking very much and some things are broken or not existing.
What is GeilMail aiming for?
GeilMail should make hosting an email server for you, your friends or your organisation as easy as possible. While there are a lot of solutions of setting up an email server, they all need a lot of documentation reading and understand about email. GeilMail is trying to be an all-in-one solution that can be installed and configured in 15 minutes.
It is not designed for endless scalability and thousands of users, because email is about decentrality and intercommunication and not huge clustering.
GeilMail will have SMTP and IMAP support with STARTTLS. There won't be support for legacy technology.
Guidelines
Building/Testing
For vendoring the tool bunch is used. All dependencies can be resolved by typing bunch install
. In order to run geilmail, type bunch go run geilmail.go
.
The tests can be executed with bunch go test ./...
.
Test Coverage
A high test coverage is appreciated. In order to measure and inspect, type bunch go test -v -cover -covermode=count -coverprofile=cover.out && go tool cover -html=cover.out