Last night I finished the tests, or at least enough tests, so I could make a first release of my Gemini server: SpaceBeans.
With the name I tried to link the Gemini space theme with the idea of the server running on the Java Virtual Machine. So those beans are coffee beans, of course.
In case you haven’t read about it on this blog, the current list of features is:
- Static files, including optional directory listings
- IPv4 and IPv6
- Configurable MIME types, or a built-in resolver
- Virtual hosting, with SNI support
- User provided certificates or auto-generated in memory (for development)
- Configurable SSL engine (e.g. TLSv1.2 and/or TLSv1.3), with configurable ciphers
Which I believe it the minimum to make the server useful.
This is also my first release of anything Scala –out of what I do in my day job, that is–, so it has been an interesting experience.
Other than the source code (MIT licensed), you can download a .jar
file that
bundles everything you need to run the service on the JVM. My experience releasing
services so far has been via Docker images, but in this case I think the lightweight
nature of Gemini makes it a bit overkill.
There are a good number of Gemini servers out there, and some of them are very popular already, so I don’t expect anybody to use this; but you never know!