Commit Graph

66 Commits

Author SHA1 Message Date
Ken d4b7eeb403 feat: add NavBar component with site name, Posts link, and responsive layout
Created NavBar.astro component with:
- Site name link 'Crash Test Dev' and Posts nav link with active state detection
- aria-label='Site navigation' and aria-current='page' accessibility attributes
- Responsive stacking at 599px breakpoint
- Design token-based styling (structure font, border-subtle, etc.)
- Updated index.astro to include NavBar in nav slot
- Added comprehensive build-output tests (24 assertions)

Generated with Amplifier
Co-Authored-By: Amplifier <240397093+microsoft-amplifier@users.noreply.github.com>
2026-05-26 22:46:16 +00:00
Ken 4455a5ed01 feat: create BaseLayout component with global styles and skip navigation
- Created src/layouts/BaseLayout.astro as the site's base layout component
- Imports tokens.css and fonts.css for design system and typography
- Accepts Props {title: string, description?: string}
- Computes page title (appends ' — Crash Test Dev' unless title is already 'Crash Test Dev')
- Reads import.meta.env.BASE_URL for RSS link generation
- HTML structure: doctype, html lang=en, head with charset/viewport/description meta, computed title, RSS link alternate
- Body: skip-to-content link, named nav slot, main#main-content with default slot
- Global styles: CSS reset, body typography, link styles, skip-link, main container, ::selection
- Updated src/pages/index.astro to use BaseLayout with inline style placeholders demonstrating tokens/fonts
- Added tests/check-base-layout.mjs build-output test with 23 assertions, all passing
2026-05-26 22:43:02 +00:00
Ken e100119e3b feat: download and self-host Google Fonts woff2 files
- Created scripts/download-fonts.py: downloads Google Fonts woff2 files (latin subset only) using urllib.request with Chrome User-Agent header
- Parses CSS response for latin @font-face blocks, extracts family/weight/style/URL metadata
- Downloads to src/fonts/ with naming convention {family}-{weight}{-italic}.woff2
- Created src/styles/fonts.css: 8 @font-face declarations for:
  * Source Serif 4 (400, 600, 400-italic) — prose voice
  * Inter (400, 500, 600, 700) — structure voice
  * JetBrains Mono (400) — evidence voice
- All fonts use format('woff2'), font-display: swap, and relative URLs
- Fonts placed in src/fonts/ for Vite processing at build time

Generated with Amplifier

Co-Authored-By: Amplifier <240397093+microsoft-amplifier@users.noreply.github.com>
2026-05-26 22:39:10 +00:00
Ken b302f8d910 feat: add design tokens as CSS custom properties
Create src/styles/tokens.css with complete design token system including:
- Surface, text, accent, code, border, focus colors
- State colors (success, warning, error, info)
- Shadow definitions
- Typography families with full fallback stacks
- Typography scale (xs through 3xl) and line heights
- Spacing scale (0 through 12)
- Border radius tokens
- Layout constraints (prose, code, container widths)
- Motion tokens with reduced-motion media query

All values sourced from .design/specs/design-tokens-2026-05-26.md.
Includes verification test with 56 assertions across all categories.
2026-05-26 22:35:59 +00:00
Ken cf0c07f2a9 feat: scaffold Astro project replacing Gatsby
- Remove gatsby-config.js, yarn.lock, src/gatsby-theme-blog/
- Create package.json with astro, @astrojs/mdx, @astrojs/rss deps
- Create astro.config.mjs with site/base for GitHub Pages
- Create tsconfig.json extending astro/tsconfigs/strict
- Create src/env.d.ts with astro/client reference
- Create minimal src/pages/index.astro placeholder
- Update .gitignore: replace gatsby section with astro (dist/, .astro/)
- Add scaffold verification tests
- Verified: npm run build succeeds with output in dist/
2026-05-26 22:32:22 +00:00
Kenneth Chau c36c48b684 Update azure-static-web-apps-salmon-sea-0f0c8771e.yml 2020-07-11 08:47:17 -07:00
Azure Static Web Apps c9fc8d621a ci: add Azure Static Web Apps workflow file 2020-07-11 08:42:24 -07:00
Ken 91d67d21f3 no link 2019-08-16 20:40:33 -07:00
Ken b4f5e90447 yo blog 2019-08-16 20:35:55 -07:00
Kenneth Chau 1d7c9df8e4 Update Blog “localize-react-without-bloating-the-bundle” 2019-08-16 16:22:03 -07:00
Kenneth Chau 1601092325 Update Blog “localize-react-without-bloating-the-bundle” 2019-08-16 16:04:05 -07:00
Kenneth Chau f3d908fb61 Create Blog “localize-react-without-bloating-the-bundle” 2019-08-16 16:03:29 -07:00
Kenneth Chau 16be123e5c Upload “/static/assets/localize-bg.png” 2019-08-16 16:03:03 -07:00
Ken b56acdb9ab back to github source we go! 2019-08-16 15:55:42 -07:00
Ken 22007b8d29 netlify cms 2019-08-16 07:54:34 -07:00
Ken ae34d3aa28 Initial commit from gatsby: (https://github.com/gatsbyjs/gatsby-starter-blog-theme.git) 2019-08-16 06:47:09 -07:00