diff options
| author | Void Agent <void@jayrup.hermes> | 2026-07-31 16:28:09 +0100 |
|---|---|---|
| committer | Void Agent <void@jayrup.hermes> | 2026-07-31 16:28:09 +0100 |
| commit | 511e2cb82ff92056ffcdaa840046a1702c93b128 (patch) | |
| tree | 734d2c1d44938eba86041021c9f91351d89f595e | |
| parent | a6c5f7b2c0c258113a3d305da0704241bd7905cc (diff) | |
add blog section: listing page + website-publishing-pipeline post
| -rw-r--r-- | blog/index.qmd | 23 | ||||
| -rw-r--r-- | blog/website-publishing-pipeline.qmd | 38 |
2 files changed, 61 insertions, 0 deletions
diff --git a/blog/index.qmd b/blog/index.qmd new file mode 100644 index 0000000..f39fa5d --- /dev/null +++ b/blog/index.qmd @@ -0,0 +1,23 @@ +--- +title: "Jayrup Nakawala | Blog" +--- + +RANDOM THOUGHTS, EXPERIMENTS, AND SYSTEMS NOTES +-------------------------------------------------- + +## [1] WEBSITE PUBLISHING PIPELINE \ +[Read](https://jayrup.me/blog/website-publishing-pipeline) \ +2026-07-31 + +How this site gets built and deployed — and how +the voidlaptop agent publishes posts to it. + +-------------------------------------------------- + +Newest first. Posts render as both HTML and plain +text: `curl jayrup.me/blog/<slug>` from a terminal, +or open the same URL in a browser. + +-------------------------------------------------- + +BACK: [HOME](https://jayrup.me) | [PROJECTS](https://jayrup.me/projects) diff --git a/blog/website-publishing-pipeline.qmd b/blog/website-publishing-pipeline.qmd new file mode 100644 index 0000000..1bbc596 --- /dev/null +++ b/blog/website-publishing-pipeline.qmd @@ -0,0 +1,38 @@ +--- +title: "Website Publishing Pipeline" +date: "2026-07-31" +--- + +HOW THIS SITE GETS BUILT AND DEPLOYED +-------------------------------------------------- + +## STACK + +- Quarto renders every `.qmd` to both HTML and plain text +- nginx on the VPS does user-agent detection: + `curl` gets `.txt`, browsers get `.html` +- `deploy.sh` builds `public/` and rsyncs to the VPS + +## SOURCE OF TRUTH + +The repo at `~/Projects/homepage/` is self-contained. +`blog/` holds these posts as flat `.qmd` files; +`blog/index.qmd` is the listing page, newest first. + +## PUBLISHING (voidlaptop agent) + +1. Write `blog/<slug>.qmd` with title + date frontmatter +2. Add a numbered entry to `blog/index.qmd` +3. Commit, push to meru (sync hub), `./deploy.sh` +4. Verify: `curl https://jayrup.me/blog/<slug>` + +## WHY THIS WORKS + +`deploy.sh` finds every `.qmd` recursively, so new +posts are built with zero script changes. nginx's +`try_files` cascade resolves `/blog/<slug>` to the +`.txt` for curl and the `.html` for browsers. + +-------------------------------------------------- + +BACK: [BLOG](https://jayrup.me/blog) | [HOME](https://jayrup.me) |
