No description
Find a file
2025-11-01 18:42:49 +01:00
contrib feat: Add docker support 2024-10-06 13:34:29 +02:00
pkg feat: Add session variable 2025-11-01 18:34:04 +01:00
scss feat: Adapt scss to support dark mode 2025-10-26 22:38:48 +01:00
static feat: Add qtc templating 2024-05-05 19:02:43 +02:00
templates feat: Add session variable 2025-11-01 18:34:04 +01:00
.gitignore ref: Makefile takes all go files into account 2024-10-05 16:09:40 +02:00
.gitmodules feat: Add bootsrap scss 2024-05-05 18:41:39 +02:00
config.example.scfg feat: Add option to configure dark/light themes 2025-11-01 17:49:00 +01:00
go.mod chore: Update dependencies 2025-10-26 22:46:25 +01:00
go.sum chore: Update dependencies 2025-10-26 22:46:25 +01:00
LICENSE chore: Update readme and add LICENSE 2024-06-25 21:19:56 +02:00
main.go feat: Add UI/Handler login process 2024-12-11 17:05:12 +01:00
Makefile feat: Add wrapper for commit 2025-02-15 17:33:24 +01:00
README.md docs: Remove item solved 2025-11-01 18:42:49 +01:00

Cerrado

Self host single user forge.

You can find a running instance here:

https://beta.gabrielgio.me

Goals

Keep it simple and lightweight, that includes the application itself, development process and the deployment.

The application requires no javascript to run, and it is light and fast to render.

This project is also easy to iterate on. There are only two dev dependencies: go and sassc so it compiles fast. Codewise it strives for easy to understand. Easy to read code is better than clever.

The deployment process should be easy to wrap the head around and straightforward to set up. To achieve that it uses a simple file format1 to configure everything. Also to reduce the moving parts the whole application, including its statics files, is bundled into a single binary.

To run the project you just need to make run.

Installations

One installation process available is through my apk repository23.

You could also run:

make
make install

Or you could also pick another prefix:

PREFIX=$HOME/.local/ make install

You can check openrc files for the details how it is run with a init system, but in general you'd need the cerrado binary and scfg file, which can easily be integrated with systemd.

Contributing

To discuss about the project send me a email or write an issue on codeberg4. To avoid duplicated work or to work something I might not take in, I'd recommend to reach me before doing something.

To contribute code feel free to create a PR on codeberg or send me an email-patch5.

My email:

mail@gabrielgio.me

TODO

  • dark theme that does not require js

Ideas

  • Code snippet support
  • Setup manual (man feature perhaps?)
  • Add metrics
  • Add reference based cache system. Cerrado should be able to cache the whole page based on its reference hash

Future

  • Mail patch / mailing list. This is very complex endeavour. In a distant future I might do it, but for now I will focus on the features listed above.