馃崄 A very simple static Gemini server, now with Titan support!
cpp gemini titan gemini-protocol titan-protocol
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

C++ 89.0%
Dockerfile 5.5%
Shell 5.4%
2 1 0

Clone this repository

https://tangled.org/fuwn.net/maple https://tangled.org/did:plc:g4lsi6ub2d3kqklfokk3dvmy/maple
git@tangled.org:fuwn.net/maple git@tangled.org:did:plc:g4lsi6ub2d3kqklfokk3dvmy/maple

For self-hosted knots, clone URLs may differ based on your setup.

Download tar.gz
README.md

Maple#

A very simple static Gemini server; written within a single file and liberally spanning 156 lines-of-code.

Usage#

Certificates#

Before any possible method of usage; you must generate or use a preexisting server certificate.

If you do not have an existing certificate, generate one using the provided certificate generations script: bin/genkey (requires OpenSSL).

The server certificate must be placed in a directory -- directly adjacent to the Docker Compose file or executable -- named .maple. The public and private keys must be named public.pem and private.pem, respectively.

Gemini Content#

Gemini content must be placed in a directory -- directly adjacent to the Docker Compose file or executable -- named .maple/gmi and ending with the file extension .gmi.

Docker Compose#

A Docker Compose file is already setup here. The only field which should be modified is the ports, if you have to.

$ docker-compose up -d (requires Docker and/ or Docker Compose)

Executable#

  1. Build: ninja (requires Ninja)
  2. Run: out/maple

License#

This project is licensed with the GNU General Public License v3.0.