Skip to content

feat(collabora): rebuild the page and footer from Figma - #182

Merged
BIA3IA merged 4 commits into
mainfrom
feat/collabora-figma
Oct 15, 2026
Merged

BIA3IA merged 4 commits into
mainfrom
feat/collabora-figma

Conversation

@lorenzocorallo

Copy link
Copy Markdown
Member

Rebuilds Collabora con Noi 1:1 from Figma (desktop 5248:13597, mobile 5246:13012) and ports the new shared footer (desktop "footer-francesca", mobile "Footer-mobile").

At 1728px every heading, card and footer block sits at its Figma y-coordinate (page height 5080 vs 5079 in Figma). Mobile is within ~20px, where Figma's text boxes are shorter than their text.

Page

  • Figma assets only: the 7 Material icons, the photo crops, and the company photo, which was a different picture from the design (replaced with the Figma asset).
  • Shapes placed from the Figma layer transforms with FigmaShape: real size (the SVGs' blur bleed was ignored, so shapes were ~20% too small) and the blur Figma keeps on resized instances.
  • Fluid between the frames: 24px → 145px gutters, two columns from xl/3xl, contact steps in a row from 1616px. On 2K/4K the content stays in the 1438px column and the background scales with the viewport.

Footer (all pages)

  • Desktop layout from lg, mobile below. Collapsible site links, contacts, 5x1000, TikTok added, socials linked to the official accounts.
  • ConditionalFooter now takes the server-rendered Footer as children (follow-up from the fix: adjust guida della matricola #156 audit).

Shared fixes (affect other pages)

  • Typography: display-large/display-medium size and weight, Figma letter-spacing on every style.
  • Hero: title gradient #020618 → #6e6e6e, 24px title/subtitle gap and Poppins 24px subtitle, as in every Figma hero. The subtitle's skewed conic gradient is resampled from Figma.
  • Header: desktop layout from lg (it overlapped at 768px).
  • Carousel dots: Figma slider dots, no hover colour, fixed a duplicate-key warning.

Decisions to review

Screenshots

Figma (left) vs implementation (right)

Desktop 1728px Mobile 402px

Full page by width

360px 402px 768px 1024px
1280px 1440px 1728px
1920px (FHD) 2560px (WQHD) 3840px (4K)

Images live on the pr-assets/collabora-figma branch; it can be deleted after merge.

Checks

  • pnpm build, pnpm typecheck, pnpm check pass.
  • Checked in Chromium at 360, 402, 768, 1024, 1280, 1440, 1728, 1920, 2560 and 3840px: no horizontal overflow, no console errors.

🤖 Generated with Claude Code

lorenzocorallo and others added 4 commits October 15, 2026 14:22
display-large and display-medium had the wrong size (and display-medium the wrong weight), and no style had Figma's letter-spacing. Styles with 0 spacing now set it explicitly, since body inherits body-large's 0.5px.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Hero: title gradient (#020618 → #6e6e6e), 24px title–subtitle gap and Poppins 24px subtitle, as in every Figma hero; the subtitle conic gradient is resampled from Figma's skewed gradient
- CarouselDots: Figma slider dots (16px current, 12px others), no hover colour, unique keys
- Header: desktop layout from lg, it overlapped at 768px
- CardMultipleIcons: Figma glass-icone size
- Shapes: FigmaShape places a shape from its Figma geometry, including blur bleed and the blur Figma keeps on resized instances

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Desktop layout from the 1728px frame, mobile from Footer-mobile. Adds TikTok and links the socials, collapsible site links, contacts, 5x1000 box and language selector (disabled until #44). ConditionalFooter now receives the server-rendered Footer as children.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1:1 with the desktop (5248:13597) and mobile (5246:13012) frames: Figma icons and photo crops, shapes placed from Figma, fluid layout up to 4K. The company photo was a different picture from the design and is replaced with the Figma asset.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 73163097-3244-4157-bff2-06628a8ef4ee
📥 Commits

Reviewing files that changed from the base of the PR and between c93547e and c827b01.

⛔ Files ignored due to path filters: 10
  • src/assets/icons/collabora/chat.svg is excluded by !**/*.svg
  • src/assets/icons/collabora/favorite.svg is excluded by !**/*.svg
  • src/assets/icons/collabora/group.svg is excluded by !**/*.svg
  • src/assets/icons/collabora/handshake.svg is excluded by !**/*.svg
  • src/assets/icons/collabora/mail.svg is excluded by !**/*.svg
  • src/assets/icons/collabora/prompt-suggestion.svg is excluded by !**/*.svg
  • src/assets/icons/collabora/school.svg is excluded by !**/*.svg
  • src/assets/icons/tiktok.svg is excluded by !**/*.svg
  • src/assets/images/collabora_company.jpg is excluded by !**/*.jpg
  • src/assets/images/collabora_company.png is excluded by !**/*.png
📒 Files selected for processing: 20
  • src/app/collabora/page.tsx
  • src/app/collabora/shapes.tsx
  • src/app/layout.tsx
  • src/components/card-multiple-icons/index.tsx
  • src/components/collabora/about-section.tsx
  • src/components/collabora/association-section.tsx
  • src/components/collabora/collaboration-section.tsx
  • src/components/collabora/company-section.tsx
  • src/components/collabora/contact-section.tsx
  • src/components/collabora/info-card.tsx
  • src/components/collabora/photo-section.tsx
  • src/components/collabora/section.tsx
  • src/components/conditional-footer.tsx
  • src/components/footer/index.tsx
  • src/components/footer/shapes.tsx
  • src/components/header/header.tsx
  • src/components/shapes.tsx
  • src/components/ui/carousel.tsx
  • src/components/ui/hero.tsx
  • src/styles/typography.css

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.

Walkthrough

The pull request updates the Collabora page layout and sections, introduces shared card, photo, and section components, and replaces CSS-positioned decorations with Figma-coordinate shapes. It also rebuilds the footer for desktop and mobile, changes footer route mounting, and adjusts shared responsive UI and typography styles.

Changes

Collabora and site presentation

Layer / File(s) Summary
Shared rendering foundations
src/components/shapes.tsx, src/components/collabora/section.tsx, src/components/collabora/info-card.tsx, src/components/collabora/photo-section.tsx
Adds Figma-coordinate shape rendering and shared responsive components for section styles, information cards, and photo sections.
Collabora section content
src/components/collabora/about-section.tsx, src/components/collabora/association-section.tsx, src/components/collabora/collaboration-section.tsx, src/components/collabora/company-section.tsx, src/components/collabora/contact-section.tsx
Updates Collabora sections to use shared components, responsive card content, and revised layouts.
Collabora page and shape placement
src/app/collabora/page.tsx, src/app/collabora/shapes.tsx, src/components/ui/hero.tsx, src/components/ui/carousel.tsx, src/components/card-multiple-icons/index.tsx, src/components/header/header.tsx, src/styles/typography.css
Updates page composition and responsive shape placements. Adjusts shared hero, carousel, header, icon-card, and typography styles.
Responsive footer and mounting
src/app/layout.tsx, src/components/conditional-footer.tsx, src/components/footer/*
Adds desktop and mobile footer layouts, mounts the footer through ConditionalFooter, and updates footer decorations.

Priority: ➖ Normal

Change: Feature

Merge Risk: ⚪ Minimal · up to c827b

This change rebuilds the Collabora page and footer. No concrete functional or runtime risk was found, so it looks ready to merge. Visual fidelity to the Figma designs has not been checked in a browser.

Pre-merge checks: Passed 3 · Failed 1

Failed Failed checks: 1 warning

Check name Status Explanation Resolution
Docstring Coverage Warning Docstring coverage is 17.95% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 39 functions across 19 files. (1 skipped:… Write docstrings for the functions missing them to satisfy the coverage threshold.
Passed Passed checks: 3 passed
Check name Status Explanation
Title check Passed The title clearly summarizes the main changes: rebuilding the Collabora page and shared footer from Figma designs.
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

Docstring coverage is 17.95% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 39 functions across 19 files. (1 skipped: 1 unsupported.)

  • Fix all pre-merge checks with AI
✨ Finishing Touches: 💡 1
📝 Generate docstrings: 💡
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@lorenzocorallo
lorenzocorallo requested a review from BIA3IA October 15, 2026 12:31
@BIA3IA
BIA3IA merged commit e8ab380 into main Oct 15, 2026
2 checks passed
@BIA3IA
BIA3IA deleted the feat/collabora-figma branch October 15, 2026 12:32
BIA3IA pushed a commit that referenced this pull request Oct 15, 2026
* fix(typography): match the Figma text styles

display-large and display-medium had the wrong size (and display-medium the wrong weight), and no style had Figma's letter-spacing. Styles with 0 spacing now set it explicitly, since body inherits body-large's 0.5px.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix(ui): align shared components with Figma

- Hero: title gradient (#020618 → #6e6e6e), 24px title–subtitle gap and Poppins 24px subtitle, as in every Figma hero; the subtitle conic gradient is resampled from Figma's skewed gradient
- CarouselDots: Figma slider dots (16px current, 12px others), no hover colour, unique keys
- Header: desktop layout from lg, it overlapped at 768px
- CardMultipleIcons: Figma glass-icone size
- Shapes: FigmaShape places a shape from its Figma geometry, including blur bleed and the blur Figma keeps on resized instances

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* feat(footer): port the Figma footer

Desktop layout from the 1728px frame, mobile from Footer-mobile. Adds TikTok and links the socials, collapsible site links, contacts, 5x1000 box and language selector (disabled until #44). ConditionalFooter now receives the server-rendered Footer as children.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* feat(collabora): rebuild the page from Figma

1:1 with the desktop (5248:13597) and mobile (5246:13012) frames: Figma icons and photo crops, shapes placed from Figma, fluid layout up to 4K. The company photo was a different picture from the design and is replaced with the Figma asset.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
toto04 pushed a commit that referenced this pull request Oct 15, 2026
* feat(storia): add responsive history page from Figma

* fix(storia): align typography with existing design tokens

* refactor(storia): polish cards typography and responsive layout

* feat(storia): add portrait hero and chapter navigation

* fix(storia): show board officers and simplify hero

* style(storia): stagger chapter cards and inset portrait captions

* style(storia): unify gradient icons and refine chapter layouts

* style(storia): stack all chapter cards at full width

* feat(collabora): rebuild the page and footer from Figma (#182)

* fix(typography): match the Figma text styles

display-large and display-medium had the wrong size (and display-medium the wrong weight), and no style had Figma's letter-spacing. Styles with 0 spacing now set it explicitly, since body inherits body-large's 0.5px.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix(ui): align shared components with Figma

- Hero: title gradient (#020618 → #6e6e6e), 24px title–subtitle gap and Poppins 24px subtitle, as in every Figma hero; the subtitle conic gradient is resampled from Figma's skewed gradient
- CarouselDots: Figma slider dots (16px current, 12px others), no hover colour, unique keys
- Header: desktop layout from lg, it overlapped at 768px
- CardMultipleIcons: Figma glass-icone size
- Shapes: FigmaShape places a shape from its Figma geometry, including blur bleed and the blur Figma keeps on resized instances

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* feat(footer): port the Figma footer

Desktop layout from the 1728px frame, mobile from Footer-mobile. Adds TikTok and links the socials, collapsible site links, contacts, 5x1000 box and language selector (disabled until #44). ConditionalFooter now receives the server-rendered Footer as children.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* feat(collabora): rebuild the page from Figma

1:1 with the desktop (5248:13597) and mobile (5246:13012) frames: Figma icons and photo crops, shapes placed from Figma, fluid layout up to 4K. The company photo was a different picture from the design and is replaced with the Figma asset.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Lorenzo Corallo <66379281+lorenzocorallo@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants