all repos — flounder @ d083fbf8a06a861d62e355ad64192bd2c313565d

A small site builder for the Gemini protocol

README.md (view raw)

 1# Flounder: a portal into the small web 
 2
 3A lightweight server to help users build simple Gemini sites over http(s) and serve those sites over http(s) and Gemini
 4
 5Flounder is in ALPHA -- development and features are changing frequently, especially as the Gemini spec and ecosystem remains relatively unstable.
 6
 7See the flagship instance at https://flounder.online and gemini://flounder.online
 8
 9## Building
10
11Requires go >= 1.15 and sqlite3 development libraries.
12
13`go build`
14
15To run locally, you can use the example-config.toml to start a test server. 
16
17`./flounder -c example-config.toml serve`
18
19After creating an account, you can activate it at the command line with:
20
21./flounder -c example-config.toml activate-user [your-username]
22
23## Deploying
24
25Gemini TLS certs are handled for you. For HTTP, you'll need a reverse proxy that does the following for you:
26
271. Wildcard for \*.yourdomain.whatever
282. On Demand cert for custom user domains
29
30If you have a very small deployment <20 users, for example, you can use on demand cert for all domains, and don't have to setup a wildcard cert, for simplicity.
31
32I'm using Caddy. I haven't tested any other servers.
33
34I have not extensively tested the self-hosting capabilities, but making it easy to self-host Flounder for either a single or multi-user instance is a goal of mine. There may be minor issues where "flounder.online" is hardcoded, but I'm trying to fix them. Email me if you encounter issues or would like guidance.
35
36## Admin
37
38To make yourself an admin, create a user through the web browser, then run `./flounder -c [config_path] make-admin [your user]` -- this gives you access to admin tools to manage users.
39
40Backup your users' data regularly! The admin deletion commands are irreversible.
41
42Flounder comes with an admin panel accessible to users with the admin db flag set. Admins can also impersonate users if you need to take actions like moderating their content, deleting their account, changing their password, etc.
43
44## Development
45
46Patches are welcome!
47
48* [Ticket tracker](https://todo.sr.ht/~alexwennerberg/flounder)
49* [Mailing list](https://lists.sr.ht/~alexwennerberg/flounder-discuss)