From a23a1609de4c063a823671fb7079b7d2deb0675e Mon Sep 17 00:00:00 2001 From: Raghuram Subramani Date: Sat, 2 Aug 2025 10:35:20 +0530 Subject: projects: hydrate pages with README and add page structure --- projects/msg.md | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 94 insertions(+), 1 deletion(-) (limited to 'projects/msg.md') diff --git a/projects/msg.md b/projects/msg.md index 0eaeddf..2a8851e 100644 --- a/projects/msg.md +++ b/projects/msg.md @@ -3,6 +3,99 @@ description = An incredibly opinionated, hackable, minimal Static Site Generator languages = C url = /projects/msg template = project.html +link = https://github.com/compromyse/msg +linklabel = SOURCE --- -# MSG +> See https://github.com/compromyse/compromyse.xyz for an example site. + +### Compilation & Usage +```sh +# REQUIREMENTS: CMake, Git, GCC/Clang, GNUMake/Ninja +$ git clone https://github.com/compromyse/msg +$ mkdir build && cd build +$ cmake .. +$ make # or ninja +$ ./msg -h +msg: The Minimal Static Site Generator + +Usage: ./msg [-h] [-w] [-v] [-o ] + -h : Help + -w : Watch working directory for changes + -v : Verbose + -o : Output directory + : Working directory +``` + +### Site Structure +```sh +. +├── assets +│   └── me.webp +├── config.cfg +├── index.html +├── partials +│   ├── footer.html +│   ├── navbar.html +├── projects.html +└── templates + └── base.html +``` + +### Features + +#### Includes - include files from `/partials` + +```html + + + + {{ include "navbar.html" }} + ... + + +``` + +#### Contentfor - define content for templates + +```html + + + + {{ content "head" }} + + + {{ body }} + + + + +{{ contentfor "head" }} +HOME +{{ endcontent }} + +

...

+``` + +#### Eachdo - iterate over resources +```html + +title = XYZ +--- + +

XYZ!

+ + +{{ eachdo projects }} +

{{ put title }}

+{{ endeachdo }} +``` + +#### Template - specify template for page +```html + +template = base_tailwind.html +--- + +

XYZ!

+``` -- cgit v1.2.3