- C 95.1%
- Mustache 1.5%
- CSS 1.3%
- JavaScript 0.8%
- Meson 0.7%
- Other 0.6%
| content | Fix RSS more | |
| example | Support directories for public files | |
| src | Remove /drafts rout, keep drafts at the top level just not indexed | |
| thirdparty | Work around strstr issue a different way | |
| .clangd | Add basic web server | |
| .editorconfig | Add good enough CSS to example | |
| .gitignore | Add basic web server | |
| documentation.md | Remove /drafts rout, keep drafts at the top level just not indexed | |
| LICENSE | Add MIT license | |
| meson.build | Work around strstr issue a different way | |
| README.md | Add documentation.md | |
| start.sh | Build with fil-c by default | |
BlogPlat
A basic blog platform for self-hosted blogs, written in C. It powers loginasroot.net.
Dependencies
- Linux
- A C compiler that supports C23/C2x
- Meson
- Ninja
All other dependencies are included in thirdparty/. To re-download them (not required to build) run thirdparty/refresh.sh. To bump the version or include different files edit and run that script.
Building and Running
./start.sh setups up the build directory if needed, builds it, sets the environment variables needed for configuration and runs the server. Once running, the server can be stopped with Ctrl+C. Arguments to start.sh are prepended to the command, so for example you can run ./start.sh gdb or ./start.sh valgrind --leak-check=full --show-leak-kinds=all.
Docs
See documentation.md for details on how to deploy and customize a blog.
License
BlogPlat is MIT licensed, and all dependencies in thirdparty are either MIT or BSD Zero Clause.