Jordan Montenegro

Performance & Reliability

Build discipline and ruthless measurement. Below are production scores, budgets, and live vitals from your device.

Runtime & Build

  • Next.js (App Router) + TailwindCSS.
  • Images via next/image (optimized & responsive).
  • CI: lint, unit tests (Vitest), and e2e (Playwright).
  • Accessibility: keyboard nav, skip-nav, contrast checks.

Budgets (home & playground)

  • LCP ≲ 2.5 s on a typical laptop.
  • CLS < 0.1 (no unexpected layout movement).
  • Initial JavaScript ≈ 180 kB for first view.
  • Interactions respond in < 200 ms in the playground.
JS payload (kB)
29kB
181kB
Last 5 deploys
Median LCP (ms)
640ms
2210ms
Synthetic desktop

Lighthouse-tested on every PR

Lighthouse CI runs against five routes (/, /about, /research, /publications, /contact) on every push tomain and on every pull request. The build fails if any category drops below the thresholds below. Configuration lives inlighthouserc.json at the repo root.

≥ 90
Performance
≥ 95
Accessibility
≥ 90
Best Practices
≥ 95
SEO

Reports upload to temporary public storage; the URL is in the GitHub Action log for each run.

Live Core Web Vitals (this device)

LCP
ms
Largest Contentful Paint
CLS
0
Cumulative Layout Shift
INP
ms
Interaction to Next Paint

Values update in real time as you interact. Supports modern browsers; gracefully degrades where PerformanceObserver isn’t available.

Test status

  • Unit (Vitest): core utilities pass.
  • E2E (Playwright): smoke paths—navigation, theme toggle, preview drawer.
  • CI: GitHub Actions runs build + tests on main before deploy.