Releases: Decipher/stuar.tc
Releases · Decipher/stuar.tc
Release list
v1.1.0 — Google Analytics 4 tracking
[1.1.0] - 2026-07-14
Added
- Google Analytics 4 pageview tracking via
nuxt-gtag(propertyG-X1BRPZD4K2),
reusing the identity of the legacyvue-gtagplugin dropped in the Nuxt 4
rewrite. Gated toNETLIFY_CONTEXT === 'production'— silent in local dev,
deploy previews, and branch deploys, so preview traffic doesn't pollute
production analytics (caught in CodeRabbit review, GitHub PR #126)
Known gaps
- Micro-interaction tracking (contact form open/submit, theme toggle, sponsor
CTA) is not yet in place — tracked as GitLab issue #10
v1.0.0 — Nuxt 4 rewrite launch
[1.0.0] - 2026-07-13
Added
- Nuxt 4 rewrite of stuar.tc (replaces the legacy Nuxt 2 / DruxtJS app)
- Nuxt UI v3 + Tailwind v4 design system (
@stuartclark/ui) @nuxt/contentv3 typed article collections (headless — no Druxt)@nuxt/fontsself-hosting (Archivo + JetBrains Mono)- 10 routes: home, about, open-source, community, writing (+ article detail), uses, drupalgive, photos, styleguide
useContactModalcomposable — SSR-safe shareduseStateso any page can open the layout-level contact modaluseStatsexposesffpSites— live File (Field) Paths install count from Drupal.org API (with static fallback)- About page "Get in touch" button opens the contact modal (was a plain LinkedIn link)
- About page bio renders the FFP install count from live data (was hardcoded text)
- Standardised hero spacing across all hero pages (
pt-20 pb-12,mt-7gaps) - Live data composables:
useModules,useCoMaintainedModules,useNpmPackages,
useActivity,useContributions,useDrupalCons,useOSSProfiles - Storybook 9 with co-located stories
- Vitest unit/component tests with 100% coverage enforcement and axe a11y checks
- Playwright visual regression (4 breakpoints) + SEO metadata suite
nuxt-cloudflared-tunnelmodule for dev live preview (site + Storybook tunnels)- mise tooling config (Node 24, pnpm 10)
- Linting: ESLint, Stylelint, Markdownlint, cspell, knip, commitlint
- GitLab CI pipeline mirroring
@stuartclark/ui
(lint, linkcheck, test, typecheck, build, visual + seo, unlighthouse audit, live preview) .gitlab/scripts/helper suite: MR-note upsert/delete, live-preview tunnel, visual-failure comments- Mise-driven git hooks (
.githooks/) +hooks:installtask unlighthouse.config.ts,.lychee.toml,packageManagerfield- Repo-level docs:
AGENTS.md,CONTRIBUTING.md,CHANGELOG.md - GitHub Actions workflow modernised to mirror the GitLab pipeline
drupalCI job (PHPCS, PHPStan, PHPUnit via DDEV) for the retained backendstuar.tcNetlify production site (stuartclark) repointed to build this
Nuxt 4 app frommainvianuxt/netlify.toml(was previously deployed by
a manual GitHub Actions push job with no git integration)
Known gaps
- Google Analytics (
vue-gtag) was dropped as a side effect of removing the
legacynuxt/tree — tracked inopenspec/changes/add-analytics-gtag/ wiki/architecture.mdetc. describe the current headless setup; Druxt
re-integration is planned post-launch (seewiki/upgrade-notes/drupal-11.md)
Disabled (first launch)
/writingand/writing/[slug]— hidden from nav, accessible via direct URL/photos— hidden from nav and homepage teaser, accessible via direct URL