Skip to content

This Site — Dev Log

The portfolio itself. MkDocs static site on Netlify, fed by pre-generated JSON from multiple pipelines.

← Lab

Current — Netlify data architecture

Decoupling pre-generated JSON files from Netlify site builds. Deploys cost 15 credits each and were triggering on every data commit. Moved to Supabase Storage (private bucket sf6-reports) + Netlify Function proxy (netlify/functions/sf6-report.js) so data updates without a rebuild — no [netlify skip] needed since the workflow no longer commits report JSON at all.

  • 2026-07-02 — Supabase Storage private bucket created; Netlify env vars (SUPABASE_URL, SUPABASE_SECRET_KEY) and matching GitHub Actions secrets set
  • 2026-07-02netlify/functions/sf6-report.js added: raw-fetch proxy (no SDK dependency), reads ?cfn=, fetches from Storage with the secret key, 5-min cache header
  • 2026-07-02tools/generate_sf6_reports.py switched from writing local JSON to uploading via urllib (upsert); sf6_reports.yml workflow no longer commits/pushes
  • 2026-07-02sf6-report-echarts.js fetch URL swapped to the Function endpoint
  • 2026-07-02 — Verified: workflow uploads all 14 reports to Storage successfully (HTTP 200). Not yet verified: live function endpoint returns Netlify's native 404 on zach-king-analytics.netlify.app — deploy for commit 638977d needs checking in the Deploys tab, may need a manual/clear-cache deploy

Next: confirm deploy has the function bundled → verify report loads end-to-end on live site → delete the 14 stale JSON files in docs/assets/data/sf6-reports/.

Lab redesign — June 2026
  • 2026-06-08 — Lab redesigned: compact .lab-card grid, dashed border, problem/solution sprint framing, dev log sub-pages
Polish & launch — June 2026
  • 2026-06-06 — Pre-launch: nav (11 pages), dark/light, mobile 375px, SF6 report, finance decrypt verified
  • 2026-06-05 — Resume: Director bullet rewritten, jargon removed, AI chips updated
  • 2026-06-05 — Work index bridge sentence; Fitness Tracker case study brought to template standard
  • 2026-06-03 — Mobile nav: Flask logo centered, repo bar removed, drawer layout fixed
  • 2026-06-01 — Dark mode set as default; hero scroll indicator added
Build — May 2026
  • 2026-05-22 — Full visual polish: h3 hierarchy, mermaid scaling, 20+ CSS var conversions, light mode audit
  • 2026-05-22 — Case study template finalized: TL;DR → Personal Statement → How It Works → Under the Hood
  • 2026-05-22 — Resume: skills chips, timeline HTML, LinkedIn link; Playfair Display + Space Grotesk fonts
  • 2026-05-21 — Contact and resume pages rewritten; download buttons removed
  • 2026-05-20 — Personal Finance case study full rewrite; mermaid flow diagrams added
  • 2026-05-19 — Work index intro rewritten; SF6, PF, Recipe Studio card copy updated
  • 2026-05-07 — Initial build: nav restructure, hero, about section, CTAs