Redesign: deeper engineering-console + iOS-soft corners#58
Conversation
Rebuilt the branch as a hybrid on top of current main: keep all of
Ilyar's non-design work, apply our design on top.
From main (non-design, kept):
- ESLint flat config + lint script and deps; Lighthouse CI; VirusTotal
URL check; updated toolchain (TypeScript 6, Vite 8) and dep patches.
- WebGL feature-detection + lazy-loaded Three scene (graceful fallback).
- webp avatars; SEO/OG meta, JSON-LD and JS-less static fallback in
index.html; robots/sitemap/security infra.
Our design (applied over it):
- Self-hosted brandbook fonts (Tilt Warp / Hanken Grotesk / JetBrains
Mono); wider content grid (1450px, indexed body 3/-1).
- Frosted-glass cards (43px blur, 0.46 fill) with the backdrop-filter
fix (no scroll-reveal layer on sections).
- CTAs scroll to #contact ("Get in touch"); 6 service cards with lucide
icons; section labels in gold mono (no index numbers).
- Hero full-screen; particle field fades to 20% and scatters on scroll;
airier mobile field. Concise Team bios, en dashes, trimmed footer,
in@ email.
InfinityField ref access moved into an effect to satisfy lint.
Lint, tsc and production build are green.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Push the existing engineering-console direction harder, synthesizing the installed design skills (industrial-brutalist, redesign-existing-projects, high-end-visual-design, design-taste-frontend). Fonts, brand palette and the WebGL hero are unchanged. - Tokens: razor-sharp radii (0), spring/expo motion easings, blueprint grid + crosshair + film-grain texture tokens. - Global texture: bidirectional grid with gold crosshair ticks at every intersection, fixed soft-light film grain. - Section: telemetry datum marker (crosshair + oversized mono index + ruler + "// LABEL"). SectionHeader: extreme type scale, no eyebrow. - Button: sharp geometry, spring hover, hairline-separated trailing icon. - Hero: HUD readouts, bracketed kicker, gold tick under accent word, scroll datum, unified "Start a project" CTA. - About: stats as a ruled spec-strip with crosshairs. - Team: dossier cards (index tag, crosshair, desaturate->color on hover, corner brackets). - Services: numbered module registry with gold rails. - Contact: comms-terminal email panel with blinking caret + brackets. - Footer: gold ruler edge, crosshair wordmark, back-to-top. - Navbar: unified CTA, index labels, IntersectionObserver scroll-spy. - Motion: opacity reveals on glass cards (backdrop-filter safe), transform reveals on leaf text; respects reduced-motion and no scroll-timeline. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Design pass on top of the engineering-console redesign, plus two content and behaviour fixes. - Radii flipped razor-sharp -> iOS-soft continuous corners everywhere (buttons, cards/panels, chips, circular social icons; photos clipped to rounded cards). One smooth radius scale, shape-locked. - Removed the gold underline under the hero accent word. - Team: replaced Andrei's avatar with the provided photo (optimized to a 16 KB webp) and removed the per-card index numbers. - Contact: "Start a project" CTAs (hero + navbar) and the email panel now open a Gmail compose window in a new tab, so contact works in-browser regardless of a configured mail client. - Dropped the fragile scroll-reveal on glass cards (they were invisible at entry and broke the team-glass acceptance snapshot); cards stay visible. - Refreshed visual acceptance baselines for the new appearance. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
ilyar
left a comment
There was a problem hiding this comment.
Нашел блокеры, PR сейчас вливать нельзя.
-
qa/checksкрасный: visual acceptance падает 10/15. Локально воспроизвел:npm run lint && npm run acceptance:testпроходит lint/build, затем падают desktop/mobile baselines для navbar, glass, hero, team и contact. Это значит, что зафиксированные baseline-скриншоты не соответствуют фактическому UI в ветке. Нужно либо обновить ожидания после явного принятия нового дизайна, либо поправить UI под текущие baselines. -
src/App.tsxубрал lazy-loadedSceneи снова импортирует Three scene eager. В production build это собирает основной JS в один большой chunk около 1.12 MB (dist/assets/index-*.js), вместо отдельного scene/R3F chunk. Это регресс относительно уже принятой оптимизации и будет бить по PageSpeed/mobile startup. Нужно вернутьlazy/SuspenseдляScene.
Дополнительно: ветка содержит merge commits из main. Перед финальным merge лучше привести историю к линейному виду через rebase от актуального main, как мы договорились для рабочих веток.
Не мержу, пока QA красный и есть performance regression.
The previous commit's baselines were generated on Windows; CI renders on Ubuntu, so font antialiasing differed and the playwright acceptance job failed (10 snapshots, ~0.02 pixel ratio off). Regenerated all baselines inside the matching Playwright Linux container (v1.60.0-jammy) so they match the GitHub ubuntu-latest runner. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Hero (and contact) baselines now come from the ubuntu-latest runner itself, so they byte-match the qa job's font rendering. Removes the throwaway update-baselines workflow used to generate them. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
ilyar
left a comment
There was a problem hiding this comment.
Approved after local gate passed and performance/accessibility fixes were pushed.
Builds on the merged engineering-console redesign (#53) with a deeper design pass and a softer, iOS-style finish. Fonts (Tilt Warp / JetBrains Mono / Hanken Grotesk), the brandbook palette, and the WebGL hero are unchanged.
Deep redesign pass
Section: telemetry datum marker (crosshair + oversized mono index + ruler +// LABEL); extreme type scale, no eyebrows.iOS-soft finish
Content & behaviour
AGENTS.md, the landing positions Ever Guild as a team (community language → GitHub), so the hero accent word is "Team".Verification
npm run lint✅npm run acceptance:test✅ (visual baselines refreshed for the new appearance; all 15 pass + distinctness check)npm run build✅index.html); CI will run it.🤖 Generated with Claude Code