From e3ce1df4e0bb077d893b630e71d3f752a11cbd5b Mon Sep 17 00:00:00 2001 From: Andrew Harmel-Law Date: Wed, 9 Sep 2026 10:22:03 +0100 Subject: [PATCH 1/2] Add contribution guide link to contributors page Added a link to the contribution guide for future contributors. --- website/app/contributors/page.tsx | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/website/app/contributors/page.tsx b/website/app/contributors/page.tsx index 7499fce..3a0175a 100644 --- a/website/app/contributors/page.tsx +++ b/website/app/contributors/page.tsx @@ -13,6 +13,13 @@ export default function ContributorsPage() {

Thank you to all the contributors who have documented patterns, anti-patterns, and obstacles.

+

+ + Guide for future contributors + . +

From 4b802ef7cf41dcf165747c4c265c2687868b987f Mon Sep 17 00:00:00 2001 From: Lada Kesseler Date: Wed, 9 Sep 2026 17:34:01 +0200 Subject: [PATCH 2/2] Open the contribution guide link in a new tab and source the repo URL from site config --- website/app/contributors/page.tsx | 8 ++++++-- website/tests/unit/components/contributors-page.test.tsx | 9 +++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/website/app/contributors/page.tsx b/website/app/contributors/page.tsx index 3a0175a..55ba5ae 100644 --- a/website/app/contributors/page.tsx +++ b/website/app/contributors/page.tsx @@ -1,6 +1,7 @@ import Image from "next/image"; import Link from "next/link"; import { getContributorStats } from "@/lib/contributors"; +import { siteConfig } from "@/config/site"; import styles from "./page.module.css"; export default function ContributorsPage() { @@ -14,10 +15,13 @@ export default function ContributorsPage() { Thank you to all the contributors who have documented patterns, anti-patterns, and obstacles.

+ Want to contribute? Read the{" "} - Guide for future contributors + contribution guide .

diff --git a/website/tests/unit/components/contributors-page.test.tsx b/website/tests/unit/components/contributors-page.test.tsx index 6081718..725c073 100644 --- a/website/tests/unit/components/contributors-page.test.tsx +++ b/website/tests/unit/components/contributors-page.test.tsx @@ -2,6 +2,7 @@ import { render, screen } from '@testing-library/react' import ContributorsPage from '@/app/contributors/page' import { getContributorStats } from '@/lib/contributors' import { ContributorStats } from '@/lib/contributors' +import { siteConfig } from '@/config/site' jest.mock('@/lib/contributors') @@ -77,6 +78,14 @@ describe('Contributors Page', () => { expect(description).toBeInTheDocument() }) + it('should link to the contribution guide in a new tab', () => { + render() + const guideLink = screen.getByRole('link', { name: /contribution guide/i }) + expect(guideLink).toHaveAttribute('href', `${siteConfig.links.github}/blob/main/CONTRIBUTE.md`) + expect(guideLink).toHaveAttribute('target', '_blank') + expect(guideLink).toHaveAttribute('rel', 'noopener noreferrer') + }) + it('should render contributor cards with avatar, name, and counts', () => { render()