1### Cerrado
2
3Self host single user forge.
4
5You can find a running instance here:
6
7https://beta.gabrielgio.me
8
9### Goals
10
11Keep it simple and lightweight, that includes the application itself,
12development process and the deployment.
13
14The application requires no javascript to run, and it is light and fast to
15render.
16
17This project is also easy to iterate on. There are only two dev dependencies: go
18and sassc so it compiles fast. Codewise it strives for easy to understand.
19Easy to read code is better than clever.
20
21The deployment process should be easy to wrap the head around and
22straightforward to set up. To achieve that it uses a simple file format[^1] to
23configure everything. Also to reduce the moving parts the whole application,
24including its statics files, is bundled into a single binary.
25
26To run the project you just need to `make run`.
27
28### Installations
29
30One installation process available is through my apk repository[^2][^3].
31
32You could also run:
33
34```sh
35make
36make install
37```
38
39Or you could also pick another prefix:
40
41```sh
42PREFIX=$HOME/.local/ make install
43```
44
45You can check openrc files for the details how it is run with a init system,
46but in general you'd need the cerrado binary and scfg file, which can easily be
47integrated with systemd.
48
49### Contributing
50
51To discuss about the project send me a email or write an issue on codeberg[^4].
52To avoid duplicated work or to work something I might not take in, I'd
53recommend to reach me before doing something.
54
55To contribute code feel free to create a PR on codeberg or send me an
56email-patch[^5].
57
58My email:
59
60mail@gabrielgio.me
61
62### Missing for 1.0
63
64- Git clone support: that is very important feature for a git forge.
65- Dark mode support: in the same way as mobile support this should be supported
66 from the get go. I have slacked on this one but it should be done before 1.0.
67- Some rework on summary page: it is feels a bit crude as it is.
68
69### Ideas
70- Code snippet support
71- Setup manual (man feature perhaps?)
72- Add metrics
73- Add reference based cache system. Cerrado should be able to cache the whole
74 page based on its reference hash
75
76### Future
77- Mail patch / mailing list. This is very complex endeavour. In a distant
78 future I might do it, but for now I will focus on the features listed above.
79
80[^1]: https://git.sr.ht/~emersion/scfg
81[^2]: https://apkdoc.gabrielgio.me/
82[^3]: https://git.gabrielgio.me/apkbuilds/
83[^4]: https://codeberg.org/gabrielgio/cerrado/issues
84[^5]: https://git-send-email.io/