AGENTS.md
Hugo personal blog. Theme (themes/fortyten) is a git submodule — it will be an empty directory after a plain clone.
Setup (order matters)
git submodule update --init --recursive # theme won't load without this
npm ci # Tailwind CSS 4 deps used by the theme build
Developer commands
hugo server # local dev server
hugo # production build → public/
hugo --logLevel debug # verbose build (matches CI)
hugo new content/posts/{year}/my-new-post.md # create a new post
No npm scripts exist — invoke hugo directly.
Toolchain constraints
- Hugo extended v0.152.2 is required (pinned in
.env). The extended build is needed for Sass/SCSS in the theme. Wrong version or non-extended builds will fail. npm cimust run beforehugoeven though there are no npm scripts — the theme's Tailwind CSS 4 pipeline reads fromnode_modules/.
Architecture
- All content lives in
content/posts/{year}/as Markdown. layouts/holds site-level overrides only (currently just404.html).static/_redirectshandles Netlify/Cloudflare Pages URL rewrites (strip.html, legacy/categorias/aliases).- Home page outputs
HTML + RSS + JSON; the JSON index powers the built-in site search — do not remove it fromhugo.yaml. - Each post sets its own
url:slug in front matter rather than relying on Hugo's auto-slug.
CI
.github/workflows/check-broken-links.ymlruns on pull requests only viahtmlteston the builtpublic/directory.- Broken links are reported but don't fail the workflow (
continue-on-error: true). - Deployment is handled externally (Netlify/Cloudflare Pages Git integration) — no deploy workflow lives in this repo.