Skip to content

Repository files navigation

luisangel.me

Personal website of Luis Angel Ortega — developer, writer, and poet from Chihuahua, Mexico. Built with Hugo, custom theme (themes/metwo), bilingual English and Spanish.

The logo/icon was made by Horse Wizard.

Redesign in progress on branch redesign/posse-landing — Phase 5 (POSSE plumbing) next. See CONTEXT.md for intent and PLAN.md for the full roadmap.

Sections

  • Writings: All written content — blogposts, articles, reports, works.
  • Notes: Short-form, untitled posts (~300 words max). The POSSE-native microblog.
  • Projects: All projects.
  • Garden: Digital garden — links, reads, notes.
  • About: About me.

Languages

Most content is available in English and Spanish. The nav includes a language switcher linking to the translated version of the current page.

Theme

Custom Hugo theme at themes/metwo. No external submodule dependency.

themes/metwo/
  layouts/            index.html (landing), 404.html
  layouts/_default/   baseof.html, single.html, list.html, terms.html, rss.xml
  layouts/partials/   head.html, header.html, footer.html, foot_custom.html
  static/css/         main.css (tokens, Lora, base styles, landing layout)
  static/fonts/       lora.woff2, lora-italic.woff2 (+ latin-ext variants)
  theme.toml

Design tokens in main.css as CSS custom properties. Ayu Light (default) and Ayu Mirage (dark), switchable via OS preference or the ~/dark / ~/light nav toggle.

Data files

  • data/lately.yaml — generated by sync-lately.sh. Powers the Lately section on the landing page.
  • data/en/featured_project.yaml + data/es/featured_project.yaml — manually curated featured project, bilingual.

Scripts

All scripts live in scripts/ and read credentials from a .env file (copy from .env.example).

cp .env.example .env
# fill in RAINDROP_TOKEN and RAINDROP_COLLECTION_ID

sync-lately.sh — Lately section data

Fetches the landing page "Lately" data and writes data/lately.yaml:

  • Book: currently-reading shelf from GoodReads (public RSS, no credentials needed)
  • Film: most recently watched from Letterboxd (public RSS, no credentials needed)
  • Links: last 5 bookmarks from Raindrop.io (requires .env)
./scripts/sync-lately.sh

sync-raindrop-reads.sh — Garden latest reads

Syncs the last 50 Raindrop.io bookmarks into the full garden latest-reads pages (EN + ES).

./scripts/sync-raindrop-reads.sh

import-substack.py — Substack migration

Imports posts from both Substacks (tiny engines EN, pequeños motores ES) into content/*/post/ as Hugo markdown files. Pure Python 3 stdlib, no dependencies. Idempotent via .imported-substack-guids.

python3 scripts/import-substack.py
python3 scripts/import-substack.py --dry-run

Used by

Contributors

Languages