Conversation
…ibutes Locale codes pt-br and zh-tw are used as URL path segments (intentional) but were also used directly as HTML lang attributes and hreflang language keys, which require uppercase region subtags per BCP 47 (pt-BR, zh-TW). Adds toLanguageTag() utility and applies it in: - app/[locale]/layout.tsx: <html lang> - src/lib/utils/metadata.ts: hreflang language keys - app/sitemap.ts: sitemap hreflang alternates Fixes ~142 "HTML lang attribute invalid" ahrefs errors.
IssuesList now fetches getGFIs() internally as an async Server
Component, replacing the gfissues MDX scope variable that the slug
route previously injected at compile time. Also swaps the direct
react-emoji-render import for the canonical @/components/Emoji
wrapper used by every other consumer.
Drops the now-unused scope parameter from getPageData and compile,
along with the gfissues fetch + try/catch from the slug route.
Find/replaces <IssuesList issues={gfissues} my={8} /> ->
<IssuesList my={8} /> across the English source and 24 translated
copies of contributing/index.md.
Preliminary to the Velite MDX precompile migration, where MDX scope
variables don't fit the precompiled model.
Bumps [uuid](https://github.com/uuidjs/uuid) from 13.0.0 to 13.0.2. - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/v13.0.2/CHANGELOG.md) - [Commits](uuidjs/uuid@v13.0.0...v13.0.2) --- updated-dependencies: - dependency-name: uuid dependency-version: 13.0.2 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Adds a new /reports page that curates reputable, third-party institutional reports on Ethereum from regulators, central banks, banks, consultancies, and leading research firms. Each report shows the publication date as a tag, the title, the publisher, and a link out to the publisher. Also moves the existing /trillion-dollar-security page under /reports/trillion-dollar-security with a 301 redirect, so the EF-led security report sits alongside the external ones. Adds a Research -> Reports nav entry and a footer link. Card content follows the inclusion criteria from issue #18218 and the maintainer feedback in #18218 (comment 4498659895): substantive Ethereum content, named institutional publisher, direct publisher-hosted URL. Initial 11 entries: - Trillion Dollar Security (Ethereum Foundation, internal) - Technical Risk Assessment on Blockchain Networks (OpenZeppelin, Apr 2026) - Quantum Computing & Blockchain (Coinbase Independent Advisory Board, Apr 2026) - State of Crypto Report 2025 (a16z crypto, Oct 2025) - The Future of Financial Infrastructure: Ethereum's Layer 2 Landscape (Etherealize, Nethermind and L2BEAT, Dec 2025) - Coin Report: Ethereum (ETH) (Fidelity Digital Assets, Aug 2025) - Ethereum is Trustware (Consensys, Aug 2025) - Ethereum Pectra Upgrade: The Impact on Institutional Staking (Twinstake, 2025) - Strengthening American Leadership in Digital Financial Technology (The White House President's Working Group, Jul 2025) - BIS Papers 156 (Bank for International Settlements, Apr 2025) - From ripples to waves (McKinsey & Company, Jun 2024) Follows the canonical Card primitive pattern from app/[locale]/learn: row-span-3 subgrid layout with CardBanner (fit=contain) at top, CardContent with Tag + CardTitle + CardParagraph, and a ButtonLink CTA. ButtonLink auto- renders the external link arrow on outbound URLs. Closes #18218 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Re-encodes the 10 /reports cover images from PNG/JPG at default quality to WebP at q=80. Total asset size drops 3.8 MB to 648 KB (-83%). Largest single file (l2-landscape) drops from 1122 KB to 99 KB. WebP is well-supported across the runtime targets the site already serves; Next.js Image continues to handle per-request optimization on top. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Replaces the marketing-flavored intro ("curated collection of reputable
reports", "every report listed has been independently verified") with copy
that frames the page around what readers can learn from these reports, not
how trustworthy the list is. Also drops the em dashes per the repo style
guide (no em dashes in content writing).
Changes the BIS Papers 156 title to use a colon between the title and
subtitle (matching the BIS-published title), removing the em dash there as
well. The "BIS Papers 156" series identifier moves out of the title since
the publisher field already carries the bibliographic context.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- Does not apply this to `CardTitle` or `strong` text -- applies `text-body` to these - Refactors to use `textColor` variant for `text-body` override on `CardParagraph` text as-needed - Deprecates `variant="light"` for `CardParagraph` -- now applied globally by default Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Adds an optional fileSizeBytes field to the Report type and renders a small "PDF, X.X MB" line below the publisher on each card whose href is a direct PDF download. Three current entries qualify: - OpenZeppelin Technical Risk Assessment: 0.8 MB - Coinbase Quantum Computing & Blockchain: 0.4 MB - L2 Landscape (Etherealize / Nethermind / L2BEAT): 6.6 MB Sizes were read from each publisher's Content-Length header at the time of authoring. Cards that link to HTML landing pages do not show a size. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Encode the Card primitive's variant-driven design (CSS-var-controlled padding, spacing, and border-radius) so future UI work composes parts and picks variants rather than overriding via className. Covers all sub-components (Card, CardHeader, CardContent, CardFooter, CardBanner, CardTitle, CardParagraph, CardEmoji) with their full variant matrices, and flags hoverEffect and footer rounded=fit as proof-of-concept pending design decisions. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Switches four cards whose href previously pointed at the publisher's HTML landing to the underlying PDF, so readers reach the actual report in one click instead of two: - a16z State of Crypto 2025: blog post -> standalone PDF (16.5 MB) - Twinstake Pectra: webflow page -> PDF (1.2 MB) - White House PWG: press fact-sheet -> the 160-page PWG report PDF (5.6 MB) - BIS Papers 156: .htm landing -> bispap156.pdf (0.7 MB) Each of those now also shows "PDF, X.X MB" beneath the publisher line, so readers know what they are about to download. With this change all seven externally-linked PDF reports surface their file size. The remaining three external cards (Consensys "Ethereum is Trustware", Fidelity Coin Report, McKinsey "From Ripples to Waves") are web-only reports with no public direct-PDF URL; they now show a "Web article" indicator in the same slot so every card has a media-type label. The internal Trillion Dollar Security card stays unbadged so the EF subpage remains visually distinct from external reports. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
PR #18195 updated component styles and CSS but missed the THEMES constant in src/lib/shiki.ts, so highlighted output still rendered with one-light / one-dark-pro instead of the vitesse pair promised in the PR description.
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Build out Card primitive story coverage with variant-axis grids (backgrounds, spacing with content-spacing override, title variants, banner placement/backgrounds/sizes, header variants, footer buttons, linkable with zoom toggle) and a Composites story wired to real intl keys so the Storybook locale toolbar exercises RTL and verbose-language layouts. Variant-axis stories opt out of Chromatic snapshots at the meta level since they're dev-facing references; Composites overrides this to keep regression coverage on the production-shape compositions. Migrate MarkdownCard.stories.tsx to title 'Components / Cards / MarkdownCard' and add a grid decorator that renders six instances so the typical CardGrid layout is legible at-a-glance. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Use the noun form (with the nominalizing suffix) to match zh-tw and provide better register for breadcrumb/page-title context. The bare form is valid as a modifier but reads less naturally as a standalone noun. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
i18n: translation pipeline ("quantum resistance" all languages)
Leaderboard: Update for aarnavrotten post 1380
…13.0.2 build(deps): bump uuid from 13.0.0 to 13.0.2
Update chains data - May 22
- Updates [svg] to [svg:not(.lucide-external-link)] for SVG coloring in alert variants - Avoids re-coloring the external link arrow within Alert component Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
- " | ethereum.org" suffix automatically applied Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
- Migrate from page-developers-blog namespace usage
- Fixes ICU variable usage for "{minutes} min read"
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Add NodeFlare to nodes-as-a-service providers
…bility-description fix: add missing docs-nav-data-availability-description translation key
fix(codeblock): actually switch shiki theme to vitesse
refactor(IssuesList): self-fetch GFIs, remove MDX scope plumbing
Builder hub blog
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
…links fix(seo): update /en/staking/ links to /staking/ in restaking translations
fix(docs): correct smart-contracts example URL in style guide
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
patch: rm noir from post tags
fix(seo): normalize locale codes to BCP 47 for lang and hreflang attributes
✅ Deploy Preview for ethereumorg ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
Contributor
Lighthouse scores are calculated based on the latest audit results |
Member
Author
/review-release summaryVerified key user-facing changes on
Verdict: No 404s, broken pages, or visible regressions across the items checked. The deploy looks ready to ship. Informational only — this is not a PR review. Approval and merge remain manual. |
wackerow
approved these changes
May 28, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

⚡️ Changes
my-8to all markdownAlertusage (fix(ui): apply consistentmy-8to all markdownAlertusage #18235) @wackerow🌐 Translations
🐛 Bug Fix
📝 Documentation
🔧 Tooling
📦 Dependencies
🦄 Contributors
Thank you @BabyScope, @andreivladbrg, @bshastry, @konopkja, @mnelsonBT, @nloureiro, @pettinarip and @wackerow for the contributions! 🏆