Personal knowledge base and blog built with Astro and Pico.css.
0
stars
3,530
commits
MDX
primary language
Sep 11, 2026
updated
Personal blog and digital garden of Franklin Baldo. Built with Astro 7 and Pico.css v2.
Live site: https://franklinbaldo.github.io/
The repository powers more than a chronological blog. Its public surface currently includes:
Hrönir is both repository machinery and a public-facing curation artifact: the evaluation data lives in .routines/hronir/, while the resulting ranking is published on the site.
@astrojs/mdx@fontsourceastro:assets for image optimization (heroes generate responsive WebP)CLAUDE.md for the full operating manual.| Command | Action |
|---|---|
npm install | Install dependencies |
npm run dev | Start dev server at localhost:4321 |
npm run build | Build production site to ./dist/ |
npm run preview | Preview the built site locally |
npm run check:hygiene | Repo hygiene (root files, lockfile, etc.) |
npm run hronir:ranking | Print current Hrönir ranking |
Requires Node >=24.0.0 (see package.json#engines).
src/
├── components/ Astro components
├── content/
│ └── blog/ Posts (.md/.mdx) — slug = filename = URL
├── content.config.ts Zod schema for the blog collection
├── lib/ Build-time TypeScript helpers
└── pages/ Routes (bilingual: / and /pt/)
scripts/
├── hronir/ Hrönir CLI and rating engine
├── lib/ Shared helpers (content.mjs, blog-links.mjs)
└── oneoff/ One-shot scripts, not part of the build
docs/
├── rfcs/ RFC documents (0001 …)
├── plans/ Planning documents
└── reviews/ Session reviews
.routines/
└── hronir/ Rate files produced by Hrönir sessions (committed)
RSS feed at /rss.xml, generated
from the blog collection via
@astrojs/rss.
A couple of legacy standalone routes were dropped during the Astro modernization:
/encrypt.html — static page-encryption demo./vault/ — unmaintained landing page.If you depended on either, open an issue.
1,347 commits
1,343 commits
561 commits
253 commits
MDX
35.8%
Astro
24.5%
TypeScript
21.3%
JavaScript
12.8%
CSS
2.5%
Python
2.3%
Personal knowledge base and blog built with Astro and Pico.css.
0
stars
3,530
commits
MDX
primary language
Sep 11, 2026
updated
Personal blog and digital garden of Franklin Baldo. Built with Astro 7 and Pico.css v2.
Live site: https://franklinbaldo.github.io/
The repository powers more than a chronological blog. Its public surface currently includes:
Hrönir is both repository machinery and a public-facing curation artifact: the evaluation data lives in .routines/hronir/, while the resulting ranking is published on the site.
@astrojs/mdx@fontsourceastro:assets for image optimization (heroes generate responsive WebP)CLAUDE.md for the full operating manual.| Command | Action |
|---|---|
npm install | Install dependencies |
npm run dev | Start dev server at localhost:4321 |
npm run build | Build production site to ./dist/ |
npm run preview | Preview the built site locally |
npm run check:hygiene | Repo hygiene (root files, lockfile, etc.) |
npm run hronir:ranking | Print current Hrönir ranking |
Requires Node >=24.0.0 (see package.json#engines).
src/
├── components/ Astro components
├── content/
│ └── blog/ Posts (.md/.mdx) — slug = filename = URL
├── content.config.ts Zod schema for the blog collection
├── lib/ Build-time TypeScript helpers
└── pages/ Routes (bilingual: / and /pt/)
scripts/
├── hronir/ Hrönir CLI and rating engine
├── lib/ Shared helpers (content.mjs, blog-links.mjs)
└── oneoff/ One-shot scripts, not part of the build
docs/
├── rfcs/ RFC documents (0001 …)
├── plans/ Planning documents
└── reviews/ Session reviews
.routines/
└── hronir/ Rate files produced by Hrönir sessions (committed)
RSS feed at /rss.xml, generated
from the blog collection via
@astrojs/rss.
A couple of legacy standalone routes were dropped during the Astro modernization:
/encrypt.html — static page-encryption demo./vault/ — unmaintained landing page.If you depended on either, open an issue.
1,347 commits
1,343 commits
561 commits
253 commits
MDX
35.8%
Astro
24.5%
TypeScript
21.3%
JavaScript
12.8%
CSS
2.5%
Python
2.3%