#imap #tcp-server #server #tcp #bin

app IMAPServer

A Basic IMAP Server written in Rust (WIP)

3 releases (breaking)

0.2.0 Dec 22, 2019
0.1.0 Oct 21, 2019
0.0.0 May 22, 2017

#163 in Email

46 downloads per month

GPL-3.0 license

52KB
1K SLoC

Maintenance Build Status Build status codecov DOI

IMAPServer-rs

A Basic IMAP Server written in Rust (WIP)

Join the discussion at #IMAPServer-rs:matrix.ffslfl.net !

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

What things you need to install the software and how to install them

  1. You need to install cargo. Use rustup to install it
  2. You need the sqlite3 dev packages for your system

Installing

A step by step series of examples that tell you have to get the IMAP server running

Stable

Install using cargo:

cargo install IMAPServer

Master

Clone the repository:

git clone https://github.com/Nordgedanken/IMAPServer-rs.git

Build the binary

cd IMAPServer-rs
cargo build

Open the needed Ports

143

Setting up

To add a new user to your database install the cli:

Stable

cargo install IMAPServer-cli

Master

cd cli
cargo build

Running the cli:

mailbox-cli add --username=<email_address> --password=<password>

All passwords are saved using the argon2 hashing algorithm.

Running the tests

After cloning this repository Cargo has a simple test command. You can simply use

cargo test --release

Built With

  • Rust - The framework used

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the GPL-3.0 License - see the LICENSE.md file for details

Dependencies

~35–47MB
~797K SLoC