Skip to content

Latest commit

 

History

History
43 lines (30 loc) · 1.27 KB

File metadata and controls

43 lines (30 loc) · 1.27 KB

Personal Website

Source code for david.alvarezrosa.com.

Static site built with Hugo and a custom theme. Posts are written in Emacs Org mode within Content.org, automatically exported to Markdown via ox-hugo, then built by Hugo. A Python FastAPI backend handles email subscriptions.

Content.org (Org-mode) -> ox-hugo -> content/*.md -> Hugo -> public/

Development

hugo server -D  # Dev server with drafts
hugo --minify   # Prod build

Backend

uv sync                        # Install dependencies
uvicorn backend:app --reload   # Dev server on localhost:8000

Validation

hugo --minify --panicOnWarning                                        # Warnings as errors
lychee --accept 200,403,405,429 --root-dir public 'public/**/*.html'  # Check broken links
html5validator --config .html5validator.yaml                          # Validate HTML/CSS
pnpm test                                                             # Playwright

Deployment

Push to main triggers GitHub Actions to build and deploy via rsync.

Contributions

Pull requests welcome!