Mehari icon indicating copy to clipboard operation
Mehari copied to clipboard

A cross-platform library for building Gemini servers

Mehari

Mehari is a cross-platform library for building Gemini servers. It fully implements the Gemini protocol specification.

It takes heavy inspiration from Dream, a tidy, feature-complete Web framework.

banner

Mehari provides several packages. See here. Many examples are also provided.

Installation

opam install mehari

Features

  • Mirage OS friendly
  • Static files serving
  • MIME type inference from file content (using experimental Conan support)
  • Rate limit
  • Virtual hosting using SNI
  • CGI
  • Long-running TCP connection

Feedback

Since Mehari is in its early stages, any feedback and contributions regarding the API or security are appreciated.

Important links

  • API documentation: https://docs.heyplzlookat.me/mehari/
  • Tutorial: https://docs.heyplzlookat.me/mehari/index.html#tutorial
  • Issues: https://github.com/Psi-Prod/Mehari/issues

License

Distributed under the LGPL-3.0 License. See license for more information.