Commit Graph

30 Commits

Author SHA1 Message Date
hsiegeln
3bb71942dc feat(copy): HowItWorks — plain-language steps, bash snippet gone
Step 1 no longer shows java -javaagent:... on the marketing page; that
detail belongs in docs/install. Subtitle tightened to 'Nothing to
maintain.'
2026-04-24 23:49:42 +02:00
hsiegeln
62c77a8dc5 feat(copy): DualValueProps — outcome-led, plain language
Three tiles: ship-then-sleep, debug-in-daylight, keep-what-you-chose.
Drops -javaagent, nanosecond, and 45+ EIP node types from the landing
copy — those belong in docs.
2026-04-24 23:48:32 +02:00
hsiegeln
77bf0bfa74 feat(hero): rotate three positioning lines on a 10s cycle
All three lines render in the DOM; CSS drives the fade via data-active.
Reduced-motion users see the first line only (no interval, no fade).
Rotation pauses on hover and keyboard focus. aria-live=off on the
rotator so AT does not announce every swap; aria-hidden flips per-swap
to avoid duplicate heading announcements.

Also set vite.build.assetsInlineLimit=0 in astro.config.mjs so Astro
emits the rotator script as a same-origin external file (dist/assets/)
rather than inlining it — required for CSP script-src 'self' compliance.
2026-04-24 23:46:21 +02:00
hsiegeln
518d7a8afc feat(copy): Hero static rewrite — new kicker, thesis H1, subline
Drops -javaagent from the hero. Adds the 48px product mark next to the
kicker. Rotation is added in the next commit.
2026-04-24 23:42:09 +02:00
hsiegeln
84ff83303a feat(copy): update homepage title + meta description
Thesis: 'Run Apache Camel without running Apache Camel.' Reframes the
page from observability tool to hosted runtime platform for Camel.
2026-04-24 23:40:17 +02:00
hsiegeln
eff1ba6b8e feat(brand): swap header icon for real Cameleer logo
Placeholder 3-wavy-lines SVG replaced with the product logo
(camel + cameleer figure + compass rose).
2026-04-24 23:39:13 +02:00
hsiegeln
03573b2ac1 feat(brand): wire favicon chain to real product logo
SVG primary + 32px PNG fallback + Apple touch icon. Removes the
placeholder 3-wavy-lines favicon.
2026-04-24 23:38:12 +02:00
hsiegeln
295e2bcfff replaced TBD with TODO
Some checks failed
ci / build-test (push) Failing after 49s
ci / build-test (pull_request) Failing after 1m6s
2026-04-24 18:06:32 +02:00
hsiegeln
9a4644bada replaced TBD with TODO
Some checks failed
ci / build-test (push) Failing after 51s
ci / build-test (pull_request) Failing after 1m4s
2026-04-24 17:58:49 +02:00
hsiegeln
d98d73b14a Apply final-review cleanup: robots sitemap, CI guards, header parity
- Remove Sitemap line from robots.txt (no @astrojs/sitemap installed; was
  pointing to a 404 that would trip Google Search Console).
- Align Permissions-Policy across all three enforcement layers (middleware,
  .htaccess, Cloudflare Transform Rule in OPERATOR-CHECKLIST) by dropping the
  stray fullscreen=(self) from the middleware.
- Bump Lighthouse CI numberOfRuns from 1 to 3 to dampen CI-runner noise.
- Add CI guard that fails the build if any <TBD:...> marker survives into
  dist/ — prevents a legally incomplete imprint from shipping by accident.
- Add SFTP_* secret null-guard before the rsync --delete step so a missing
  secret fails loudly instead of targeting the SSH user's home root.
- Document the set:html compile-time-constant invariant in DualValueProps.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 17:34:27 +02:00
hsiegeln
04a1bd0aaf Add CI lint configs (html-validate, linkinator), fix nav a11y and URL routing
- .htmlvalidate.json with relaxed rules for design-system inline styles
- linkinator.config.json skipping mail, external auth/platform origins
- Fix lint:html npm script quoting for Windows-shell compatibility
- Switch astro build.format to 'directory' so /pricing resolves without MultiViews
- trailingSlash: 'ignore' lets both /pricing and /pricing/ work naturally
- Add aria-label to both <nav> landmarks (Primary, Footer) to satisfy html-validate

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 17:24:21 +02:00
hsiegeln
ecbf1f90d7 Add privacy policy page (GDPR-aligned, no-cookies posture documented) 2026-04-24 17:21:56 +02:00
hsiegeln
07de57dda5 Add imprint page (TMG §5 / DDG §5 structure, operator fields marked <TBD>) 2026-04-24 17:21:17 +02:00
hsiegeln
d4449bb404 Add pricing page with 4-tier comparison cards 2026-04-24 17:20:21 +02:00
hsiegeln
6f70e1a642 Assemble homepage — Hero, DualValueProps, HowItWorks, WhyUs, PricingTeaser, FinalCTA 2026-04-24 17:19:47 +02:00
hsiegeln
94b9b844ac Add PricingTeaser section — 4 tier mini-cards linking to /pricing 2026-04-24 17:18:58 +02:00
hsiegeln
9795c633c9 Add WhyUs section — moat (zero-code, bidirectional) + team pedigree 2026-04-24 17:18:33 +02:00
hsiegeln
5af7e0079f Add HowItWorks section — 3-step engineer-facing walkthrough 2026-04-24 17:18:08 +02:00
hsiegeln
6f9e98aeb6 Add DualValueProps section — 3 tiles pairing outcomes with capabilities 2026-04-24 17:17:46 +02:00
hsiegeln
754333226b Add homepage Hero section — headline, subhead, CTAs, diagram 2026-04-24 17:17:24 +02:00
hsiegeln
6b27d8f013 Add RouteDiagram hero SVG: 2 Camel routes with cross-route correlation 2026-04-24 17:16:29 +02:00
hsiegeln
8b4b1ae699 Add shared building-block components: header, footer, CTAs, topographic background
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 17:14:58 +02:00
hsiegeln
e084177acf Add BaseLayout with meta tags, favicon, robots.txt, and OG card
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 17:13:07 +02:00
hsiegeln
2945c63f2a Document CSP directive rationale and strengthen inline-script assertion
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 17:11:16 +02:00
hsiegeln
3432d509df Add security-headers middleware with strict CSP (TDD)
Exports buildSecurityHeaders() (pure, testable) and wires it into the
Astro onRequest middleware. Adds astro:middleware alias in vitest config
so the unit tests run outside Astro's build context. 14 tests pass (7
existing + 7 new).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 17:06:45 +02:00
hsiegeln
3a155efa69 Add sign-up URL test coverage and remove unused beforeEach import 2026-04-24 17:03:57 +02:00
hsiegeln
8ab30ca8fc Add auth URL config module with validation (TDD)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 16:59:50 +02:00
hsiegeln
d0e7d13f09 Fix focus ring visibility and add DM Sans 600 weight 2026-04-24 16:57:51 +02:00
hsiegeln
ec320f7ae4 Add Tailwind config with Mission Control tokens and global styles
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 16:51:37 +02:00
hsiegeln
b9b0dcb6ec Scaffold Astro 5 project with static output and i18n-ready content collections 2026-04-24 16:30:21 +02:00