Commit Graph

9 Commits

Author SHA1 Message Date
Timothy DeHerrera
b16246fba6 feat: use custom Nix highlight queries for richer syntax colors
- queries/nix-highlights.scm: Adapted from Helix editor queries.
  Properly identifies functions, properties, variable parameters,
  escape sequences, and string interpolation. Much richer than
  the bundled tree-sitter-nix query (99 lines vs 113 lines).

- src/highlight.rs: Load custom Nix query via include_str!
  instead of using bundled HIGHLIGHTS_QUERY.

- static/style.css: Fix variable (#e36209) and punctuation (#586069)
  colors to be distinct from text color.

Results: hl-function now appears (6 occurrences), hl-property
visible (17), hl-variable reduced from 43 to 17. Functions like
mkShell now render in purple/blue instead of orange.
2026-01-25 20:18:48 -07:00
Timothy DeHerrera
5b7805d753 fix: expand highlight captures for better Nix support
- src/highlight.rs: Add 7 new captures to HIGHLIGHT_NAMES:
  embedded, escape, function, punctuation.special, string.special,
  string.special.path, string.special.uri. Now 27 total captures.

- static/style.css: Add CSS variables and class rules for new
  captures in both light and dark themes. escape gets bold
  styling, string-special uses distinct color.

These captures are used by tree-sitter-nix but were previously
missing, causing sparse highlighting. Now functions, escapes,
and paths are properly highlighted.
2026-01-25 17:29:18 -07:00
Timothy DeHerrera
3a36c2a909 chore: add Netlify deployment configuration
- netlify.toml: Configure cargo build --release and run compiler.
  Publish directory set to public/.

- static/_headers: Add security headers (X-Frame-Options, CSP, etc.)
  and cache control for static assets (1 year for css/images,
  1 hour for HTML, 1 hour for feed).
2026-01-24 22:17:59 -07:00
Timothy DeHerrera
c145bf86b9 feat: integrate syntax highlighting into render pipeline
- src/render.rs: Rewrite with event-based pulldown-cmark parsing.
  Intercepts CodeBlock events and applies tree-sitter highlighting.
  4 new tests covering highlighted and unhighlighted code blocks.

- src/highlight.rs: Fix HtmlRenderer callback to return attributes
  only (not full span tags). Static HTML_ATTRS array for zero-alloc.

- static/style.css: Add 20 hl-* CSS classes with CSS variables.
  Light and dark mode via prefers-color-scheme.

Supported languages: rust, bash, json. Phase 2 complete.
2026-01-24 20:47:31 -07:00
Timothy DeHerrera
5317da94c4 feat: add minimal base CSS with dark mode support
- static/style.css: CSS variable-based theming with:
  - Typography (system fonts, monospace for code)
  - Layout (centered content, nav/main/footer structure)
  - Dark mode via prefers-color-scheme
  - Component styles (posts, cards, tags, hero)

- src/main.rs: Add copy_static_assets() to copy static/
  directory to public/ during build

Phase 1 complete. Ready for syntax highlighting.
2026-01-24 20:27:22 -07:00
Timothy DeHerrera
cb4d6cc8a9 post(draft): Axiosophism: An Axiomatic Morality 2025-08-30 23:50:28 -06:00
timd
2ed8f383ed fix(robots): full path to sitemap 2024-12-27 17:50:16 -07:00
timd
f73725c0c7 fix(SEO): correct meta & robots.txt issues 2024-12-27 17:43:56 -07:00
Timothy DeHerrera
9b591fc700 feat: switch to minimal zola-based apollo theme 2024-12-26 16:03:29 -07:00