Commit Graph

9 Commits

Author SHA1 Message Date
Tommy D. Rossi ee948930fe website: move placeholders to src/assets for Vite base64 inlining, add LazyVideo component
Placeholders are now generated into src/assets/placeholders/ instead of
public/ so Vite's asset pipeline processes them. Since all are < 4KB,
Vite auto-inlines them as base64 data URIs via assetsInlineLimit — zero
extra HTTP requests for placeholders.

- Static imports resolve to data:image/png;base64,... at build time
- JSDoc on placeholder props documents why static imports are required
  (synchronous availability, Vite inlining) and warns against dynamic
  imports and public/ paths
- New LazyVideo component: same pixelated poster pattern, uses native
  <video preload="none" loading="lazy"> for zero-JS lazy loading
2026-02-21 15:58:21 +01:00
Tommy D. Rossi 3b3959f5ab website: add pixelated image placeholders with fade-in transition
Build-time script generates tiny 32px-wide versions of all images in
public/ using sharp. At runtime, PixelatedImage component renders these
with CSS image-rendering: pixelated (nearest-neighbor / point sampling)
for a crisp mosaic effect, then fades in the real image on load.

- Auto-discovers images in public/, skips placeholder- prefixed files
- Mtime check skips regeneration when placeholder is newer than source
- Callback ref handles cached images where onLoad fires before mount
- Explicit z-index prevents placeholder from covering the real image
- Runs automatically as part of pnpm build in website package
2026-02-21 15:22:39 +01:00
Tommy D. Rossi 1b98de0660 website: add lineHeight prop to CodeBlock, use relative values
Default 1.85 (~22px at 12px font), reduced to 1.5 for ASCII diagram.
Updated editorial-prism.css base to match.
2026-02-21 11:09:22 +01:00
Tommy D. Rossi 8871a3f36f website: user-centered copy rewrite, fix image layout shift, replace HTML entities
- Rewrite landing page copy to focus on user needs: agent controlling
  your browser, low context usage, unrestricted capabilities, collaboration
- Add Collaboration section (captchas, consent walls, getting agent unstuck)
- Replace HTML entities (&mdash; &apos; &ndash;) with JS string expressions
- Add width/height to screenshot image to prevent layout shift
- Add no-layout-shift requirement to AGENTS.md
2026-02-20 23:25:48 +01:00
Tommy D. Rossi aaeb20643a website: rename liveline.css → editorial.css, liveline-prism.css → editorial-prism.css
Update all imports in globals.css, AGENTS.md, and _index.tsx comment.
2026-02-20 23:02:21 +01:00
Tommy D. Rossi 258f42527c website: move editorial tokens to globals.css, remove --ll- prefix
All CSS variables previously scoped under .liveline-page with --ll- prefix
are now at :root in globals.css with no prefix. Four names conflicting with
shadcn were renamed: --brand-primary, --brand-secondary, --link-accent,
--page-border.

Class renames: .liveline-page → .editorial-page, .liveline-article →
.editorial-article, .ll-bleed → .bleed, .ll-inline-code → .inline-code,
.ll-prose → .editorial-prose.

Filenames kept as-is for this commit to isolate the rename.
2026-02-20 23:02:02 +01:00
Tommy D. Rossi 2a2f4a9230 website: make liveline the index page, move old index to /github
- Renamed liveline.tsx → _index.tsx (landing page)
- Renamed _index.tsx → github.tsx (/github route)
2026-02-20 22:29:11 +01:00
Tommy D. Rossi 45ca51bc35 Update _index.tsx 2025-12-30 17:39:52 +01:00
Tommy D. Rossi 3decc28242 website 2025-12-30 14:25:19 +01:00