Skip to content

feat: sponsorship & sidebar improvements#131

Open
avivkeller wants to merge 2 commits into
mainfrom
metabar-sidebar-fixing
Open

feat: sponsorship & sidebar improvements#131
avivkeller wants to merge 2 commits into
mainfrom
metabar-sidebar-fixing

Conversation

@avivkeller

@avivkeller avivkeller commented Jun 11, 2026

Copy link
Copy Markdown
Member

This PR covers three related areas of navigation/UI work:

MetaBar

  • Adds a custom MetaBar (#theme/Metabar) showing the table of contents,
    reading time, authors, a fixed "Edit this page" link, and a "Featured Sponsor" card for active platinum-tier sponsors, ranked by monthly contribution.

Sidebar

  • Sidebars are now defined per top-level section (about, docs) in
    pages/site.mjs instead of a single global list; SideBar picks the group
    set from the first path segment. (As discussed on Discord)
  • The sponsors page now renders the sidebar, full-height alongside the content.
  • Generated site.json files (governance, loaders, plugins) use groupName
    to match the sidebar schema, and loader/plugin labels strip
    -webpack-loader/-webpack-plugin suffixes.
  • Governance pages: the overview is labeled "Overview", and docs without an
    H1 (e.g. MEMBER_EXPECTATIONS.md) get one derived from their sidebar label.

Docs

  • Generated API/loader/plugin docs move from /api, /loaders, /plugins
    to /docs/api, /docs/loaders, /docs/plugins; the navbar "API" link
    becomes "Docs". Ignore files and lint configs updated to match.

cc @webpack/TSC for the sponsorship UI

@vercel

vercel Bot commented Jun 11, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
webpack-doc-kit Ready Ready Preview, Comment Jun 12, 2026 4:11pm

Request Review

heading="Table of Contents"
headings={{ items: headings }}
items={{
'Reading Time': readingTime,

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Could we not use spreading please 🙇

Simply make a Map (or Record) and add items based on the criteria/validation, and then simply pass the record to items={{}}

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Spreading is what we use elsewhere, for instance, innodejs/learn

Comment thread components/SideBar.jsx
};

const groupsFor = path => {
if (Array.isArray(sidebar)) return sidebar;

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We should consistently use {} or not, I recall on nodejs.org we do that, unsure if we should also keep same consistency over here.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

We don't, at the moment

@ovflowd ovflowd left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

This PR is doing way too many things at the same time. Can at the very leas the title and PR description reflect that?

@ovflowd

ovflowd commented Jun 11, 2026

Copy link
Copy Markdown
Member
image

Looks a bit broken, maybe just "Featured Sponsor"

@ovflowd

ovflowd commented Jun 11, 2026

Copy link
Copy Markdown
Member
image

Shouldn't the Sidebar height (border too) go through the whole page?

@ovflowd

This comment was marked as off-topic.

@ovflowd

This comment was marked as off-topic.

@ovflowd

This comment was marked as off-topic.

Comment on lines +104 to +111
<SponsorTier
key={tier.tier}
tier={tier.tier}
label={tier.label}
price={tier.price[metric]}
cardSize={tier.cardSize}
sponsors={buckets[tier.tier]}
metric={metric}

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Instead of showing the amount they're contributing, could we sort them by contribution amount from highest to lowest, or even display them randomly? I do think we shouldn't show the contribution amount in that sidebar section.

@avivkeller avivkeller changed the title feat: add metabar, improve sidebar feat: sponsorship & sidebar improvements Jun 12, 2026
@avivkeller

Copy link
Copy Markdown
Member Author

I also don't think the charter should live on the website... It's already in the repository, and that should be enough, and we can simply link to there. Things already written on the repo should pretty much just be linked to there, avoiding duplication/desync and whatnot.

It's synced on every build, and was added in #127, which is seperate

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Please add a Become a Sponsor button

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Image

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.

3 participants