diff options
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..44b0d08 --- /dev/null +++ b/README.md @@ -0,0 +1,42 @@ +# 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`](bin/genkey) (requires +[OpenSSL](https://www.openssl.org/)). + +The server certificate must be placed in a directory -- directly adjacent to the +Docker Compose file or executable -- named [`.maple`](.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`](.maple/gmi) and +ending with the file extension `.gmi`. + +### Docker Compose + +A Docker Compose file is already setup [here](./docker-compose.yaml). The only +field which should be modified is the `ports`, if you have to. + +`$ docker-compose up -d` (requires [Docker](https://www.docker.com/) and/ or +[Docker Compose](https://docs.docker.com/compose/)) + +### Executable + +1. Build: `ninja` (requires [Ninja](https://ninja-build.org/)) +2. Run: `out/maple` + +## License + +This project is licensed with the [GNU General Public License v3.0](./LICENSE). |