Skip to content

feat: add orama logo#8829

Draft
bjohansebas wants to merge 2 commits intomainfrom
orama-logo
Draft

feat: add orama logo#8829
bjohansebas wants to merge 2 commits intomainfrom
orama-logo

Conversation

@bjohansebas
Copy link
Copy Markdown
Member

Description

Validation

Related Issues

Check List

  • I have read the Contributing Guidelines and made commit messages that follow the guideline.
  • I have run pnpm format to ensure the code follows the style guide.
  • I have run pnpm test to check if all tests are passing.
  • I have run pnpm build to check if the website builds without errors.
  • I've covered new added functionality with unit tests if necessary.

@bjohansebas bjohansebas requested a review from a team as a code owner April 18, 2026 15:49
Copilot AI review requested due to automatic review settings April 18, 2026 15:49
@vercel
Copy link
Copy Markdown

vercel bot commented Apr 18, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
nodejs-org Ready Ready Preview Apr 18, 2026 4:00pm

Request Review

@cursor
Copy link
Copy Markdown

cursor bot commented Apr 18, 2026

PR Summary

Low Risk
Low risk UI change that swaps an external, theme-dependent image for a bundled SVG component and adds a small guard for missing partner favicons; main risk is minor visual/regression or missing icon rendering.

Overview
Adds a first-class Orama partner logo to ui-components (SVG React component) and exports it via the PartnerLogos index.

Updates the searchbox footer to render the new OramaLogo component (with new .oramaLogo styling) instead of fetching a theme-dependent remote SVG, and makes the small-partner renderer skip partners that don’t provide a Favicon export.

Reviewed by Cursor Bugbot for commit 90b1258. Bugbot is set up for automated code reviews on this repo. Configure here.

@github-actions
Copy link
Copy Markdown
Contributor

👋 Codeowner Review Request

The following codeowners have been identified for the changed files:

Team reviewers: @nodejs/nodejs-website

Please review the changes when you have a chance. Thank you! 🙏

@codecov
Copy link
Copy Markdown

codecov bot commented Apr 18, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 73.91%. Comparing base (5a6d7d2) to head (8205d11).
⚠️ Report is 1 commits behind head on main.
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #8829      +/-   ##
==========================================
+ Coverage   73.90%   73.91%   +0.01%     
==========================================
  Files         105      105              
  Lines        8889     8889              
  Branches      326      326              
==========================================
+ Hits         6569     6570       +1     
+ Misses       2319     2318       -1     
  Partials        1        1              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@bjohansebas bjohansebas marked this pull request as draft April 18, 2026 15:53
Copy link
Copy Markdown

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 90b1258. Configure here.

fill="none"
aria-hidden="true"
{...props}
className={classNames('h-3 w-auto', className)}
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hardcoded size classes reduce Logo component reusability

Low Severity

The Orama Logo component hardcodes 'h-3 w-auto' in its classNames, which is inconsistent with every other partner logo component (e.g., Cloudflare, Sentry) that only include color theming — never sizing. This also duplicates the same h-3 w-auto already applied by the oramaLogo CSS module class in the Footer consumer. If the Logo is rendered via renderLargePartner (which passes no className), it would be locked to 12px height instead of sizing naturally.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 90b1258. Configure here.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds an Orama partner logo to the shared UI icon set and switches the site search footer to render the logo locally (SVG component) instead of fetching a theme-dependent remote asset.

Changes:

  • Add new Orama partner logo module to @node-core/ui-components PartnerLogos.
  • Update the Searchbox footer to render the Orama logo as an imported SVG React component.
  • Adjust partner “small” rendering to avoid hard-failing when a partner logo module doesn’t export a Favicon.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
packages/ui-components/src/Icons/PartnerLogos/index.ts Registers ORAMA in the PartnerLogos barrel export.
packages/ui-components/src/Icons/PartnerLogos/Orama/index.ts Adds the Orama logo module export (currently Logo only).
packages/ui-components/src/Icons/PartnerLogos/Orama/Logo.tsx Introduces the Orama SVG logo component.
apps/site/components/Common/Searchbox/Footer/index.tsx Replaces remote theme-based logo with locally imported SVG component.
apps/site/components/Common/Searchbox/Footer/index.module.css Adds styling for the Orama logo color/size.
apps/site/components/Common/Partners/index.tsx Makes small partner rendering tolerant of missing Favicon exports.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 35 to +40
const Logo = PartnerLogos[partner.id];
const PartnerIcon = 'Favicon' in Logo ? Logo.Favicon : null;

if (!PartnerIcon) {
return null;
}
Copy link

Copilot AI Apr 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

renderSmallPartner now returns null when a partner logo module doesn’t export Favicon, but getPartners() still slices to the requested length before rendering. This can lead to fewer than length partners being shown (e.g., when a new partner like ORAMA has only Logo). Prefer ensuring every partner logo exports a Favicon, or add a fallback (e.g., render Logo.Logo with small sizing) / filter partners with a favicon before slicing so the UI consistently renders the requested count.

Copilot uses AI. Check for mistakes.
Comment on lines +8 to 9
import OramaLogo from '@node-core/ui-components/Icons/PartnerLogos/Orama/Logo';
import { useTranslations } from 'next-intl';
Copy link

Copilot AI Apr 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This footer is a client component, and importing the Orama logo as a React SVG component inlines a very large <path> into the client JS bundle. Consider serving the logo as a static asset (local /public SVG or remote) and rendering it via <img>/next/image, or otherwise ensuring it doesn’t inflate the client bundle for the search modal UI.

Copilot uses AI. Check for mistakes.
Comment on lines +1 to +3
import Logo from './Logo';

export { Logo };
Copy link

Copilot AI Apr 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All other partner logo modules export both Favicon and Logo, but ORAMA only exports Logo. This forces call sites to add special-casing (as in Partners/index.tsx) and can cause ORAMA to be omitted from small partner lists. Add an Orama/Favicon component and export { Favicon, Logo } here to match the established PartnerLogos module shape.

Suggested change
import Logo from './Logo';
export { Logo };
import Favicon from './Favicon';
import Logo from './Logo';
export { Favicon, Logo };

Copilot uses AI. Check for mistakes.
fill="none"
aria-hidden="true"
{...props}
className={classNames('h-3 w-auto', className)}
Copy link

Copilot AI Apr 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Orama logo component hard-codes sizing (h-3 w-auto) in its own className, while consumers (e.g. the Searchbox footer and PartnerButton styles) also set SVG sizing. To avoid conflicting/duplicated sizing rules and keep this logo consistent with other partner logo components, consider removing the default size classes from the SVG and letting the caller control size via className/container CSS.

Suggested change
className={classNames('h-3 w-auto', className)}
className={classNames(className)}

Copilot uses AI. Check for mistakes.
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 18, 2026

📦 Build Size Comparison

Summary

Metric Value
Old Total Size 2.56 MB
New Total Size 2.56 MB
Delta 0 B (0.00%)

Changes

➕ Added Assets (1)
Name Size
.next/static/chunks/c13c5032b6e8ac34.js 197.80 KB
➖ Removed Assets (1)
Name Size
.next/static/chunks/b40b8882c8911871.js 197.80 KB

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