package mehari

  1. Overview
  2. Docs
A cross-platform library for building Gemini servers

Install

Dune Dependency

Authors

Maintainers

Sources

0.3.tar.gz
md5=bc6261e277d3d6141970027e9d1d3f26
sha512=5ceb0c1e492effe67dc0e659f2837ec2f962feb9dd7f92562a9f594f1dd623e0483a006ae16371deb1368f993a5996623c2e9f56113c1f91fca526899cfc2eae

Description

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.

Published: 17 Jul 2023

README

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.

Dependencies (9)

  1. x509 >= "0.16.2"
  2. uri >= "4.2.0"
  3. tls >= "0.16.0" & < "1.0.0"
  4. re >= "1.10.4"
  5. magic-mime >= "1.3.0"
  6. logs >= "0.7.0"
  7. conan >= "0.0.2"
  8. ocaml >= "4.14"
  9. dune >= "3.0"

Dev Dependencies (1)

  1. odoc with-doc

Used by (3)

  1. mehari-eio = "0.3"
  2. mehari-lwt-unix = "0.3"
  3. mehari-mirage = "0.3"

Conflicts

None

OCaml

Innovation. Community. Security.