Files
amare/openspec/changes/archive/2026-08-01-recreate-public-frontend/tasks.md
Manoel Freitas cf1589c916 feat: recreate public frontend with Heritage Editorial identity (#5)
* feat: recreate public frontend with Heritage Editorial identity

Replace placeholder visual system with EB Garamond/olive tokens, brand assets, editorial home narrative, São Paulo settings, real testimonials, and regenerated visual baselines.

Co-authored-by: Cursor <cursoragent@cursor.com>

* docs: archive recreate-public-frontend and sync Heritage Editorial specs

Merge delta requirements into main OpenSpec capabilities and move the completed change into the dated archive.

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-01 23:39:00 -03:00

4.4 KiB
Raw Permalink Blame History

1. Tokens, fonts and brand assets

  • 1.1 Write failing feature/CSS contract tests (or extend existing token/layout assertions) for Heritage Editorial palette, EB Garamond family, radius 0 and container 1120px
  • 1.2 Rewrite resources/css/tokens.css + @theme mapping in app.css to Heritage Editorial; remove card-shadow hierarchy for public content
  • 1.3 Swap Vite font from Instrument Sans to self-hosted EB Garamond (400/500/600) and update components/fonts.blade.php consumption
  • 1.4 Add optimized logo assets under public/brand/ (light/dark variants) from the provided lockup without redrawing geometry; add <x-brand.logo> with accessible alt
  • 1.5 Run focused feature/static checks covering tokens/fonts and npm run build

2. Site settings and CMS editorial fields

  • 2.1 Add failing feature tests for new typed site_settings fields (logo, hero secondary CTA/note, manifesto, method steps, principles) and São Paulo seed city
  • 2.2 Create migration + model fillable/casts for the new typed columns (JSONB for method steps/principles preferred)
  • 2.3 Update Filament ManageSiteSettings with pt-BR editorial sections and logo alt validation
  • 2.4 Update ContentSeeder / factory defaults with editorial copy and São Paulo; keep optional fields nullable with safe view defaults
  • 2.5 Run composer test:feature for site-settings coverage

3. Real testimonials

  • 3.1 Add failing tests for multi-paragraph quote rendering and seeder expectations for the five couples from depoimentos.md
  • 3.2 Replace fictional testimonials in content/visual seeders with the real quotes, author names and context/dates
  • 3.3 Update testimonials Blade to render paragraph breaks; keep unpublished-by-default path documented for production authorization
  • 3.4 Run testimonials feature tests

4. Public layout and navigation

  • 4.1 Add/extend failing tests for brand mark in header, landmarks, skip link, and mobile menu aria-expanded behavior
  • 4.2 Redesign layouts/public.blade.php header/footer for Heritage Editorial (logo, route nav, contact CTA, footer groups)
  • 4.3 Implement minimal mobile menu toggle in resources/js/app.js with reduced-motion safety
  • 4.4 Run layout/accessibility structure feature tests

5. Home editorial reconstruction

  • 5.1 Update failing HomePageContentTest (and related) for new section order: hero → manifesto → services → portfolio → method → testimonials → positioning → final CTA; empty catalog sections omitted; CTA → contact; preserve data-testid="home-primary-cta"
  • 5.2 Rebuild home components/pages to match editorial composition (merge proof+cases into one portfolio block; add manifesto + positioning; four method steps)
  • 5.3 Wire settings-driven copy and demo-image disclosure note; keep single h1
  • 5.4 Run home feature tests

6. Internal public pages as chapters

  • 6.1 Extend/adjust public page feature tests for services, portfolio index/show, about, contact (presentation-only), privacy and branded errors under the new layout
  • 6.2 Restyle pages/services, pages/portfolio/*, pages/about, pages/contact, pages/privacy, errors/404, errors/500 to Heritage Editorial without changing route contracts or inventing proof
  • 6.3 Confirm contact page shows settings channels and creates no leads
  • 6.4 Run PublicPagesTest and related SEO/N+1 tests

7. Accessibility, browser and visual gates

  • 7.1 Update browser accessibility tests for brand mark name, keyboard path to primary CTA, mobile menu operability, axe on covered routes, reduced motion and clean console
  • 7.2 Update VisualContentSeeder for deterministic Heritage Editorial content (SP + real testimonial subset + fixtures)
  • 7.3 Run browser a11y/smoke suites; fix regressions
  • 7.4 Run composer visual:update and review desktop 1440×1000 / mobile 390×844 diffs for home, services, portfolio, portfolio detail before committing baselines

8. Quality closeout

  • 8.1 Run composer pint and composer phpstan on touched PHP
  • 8.2 Run composer test:feature and composer test:browser
  • 8.3 Run composer quality (or equivalent full gate) and fix remaining failures
  • 8.4 Update surface brief / note remaining unresolved items (official contacts, final testimonial authorization, authorized photography) without inventing facts