website icon indicating copy to clipboard operation
website copied to clipboard

feat: add a centralized contributors page

Open Shubhashish-Chakraborty opened this issue 1 month ago β€’ 4 comments

This PR adds a new /community/contributors page to the AsyncAPI website.

Ive discussed everything about it in #4658 , So i would urge y'all to check it out.πŸ˜„

Changes made:

image

working (Do watch this 50 Secondrecording of the final working version):

https://github.com/user-attachments/assets/d80585d3-5c29-4734-93d4-78b0a4d1683b

Note:

  • Installed/Added a dependecy: framer-motion.
  • Added an Icon : GitFork : coz no icon was related to this.
  • I guess there needed a screenshot of the resultant page like in the newsroom and all, so taken screenshot of the contributors page and added in the /public/img/social/community-contributors.webp

And now i would love to know tweakings and changes from maintainers and the community πŸ˜„

Thankyou!

Related issue(s): #4658

Summary by CodeRabbit

  • New Features
    • Added a Contributors page under Community with navigation entry.
    • Searchable, paginated list of AsyncAPI repositories showing name, description, stars, forks and last updated.
    • View contributors for each repository with avatars and client-side username filtering.
    • Responsive layouts with smooth animations and enhanced header/hero visuals.

✏️ Tip: You can customize this high-level summary in your review settings.

Shubhashish-Chakraborty avatar Dec 05 '25 18:12 Shubhashish-Chakraborty

Deploy Preview for asyncapi-website ready!

Built without sensitive environment variables

Name Link
Latest commit 555072280449a08351729cb6fbea5b0b74ffcf45
Latest deploy log https://app.netlify.com/projects/asyncapi-website/deploys/6941be3d00449d000892e6c9
Deploy Preview https://deploy-preview-4682--asyncapi-website.netlify.app
Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

netlify[bot] avatar Dec 05 '25 18:12 netlify[bot]

[!IMPORTANT]

Review skipped

Review was skipped due to path filters

:no_entry: Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json

CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including **/dist/** will override the default block on the dist directory, by removing the pattern from both the lists.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Walkthrough

Adds a new Contributors feature: a React page that lists AsyncAPI GitHub repositories with search and pagination, lets users select a repo to load its contributors (with client-side username filtering), plus a new Git fork icon, navigation entry, Next.js page, and framer-motion dependency.

Changes

Cohort / File(s) Summary
Contributors UI & page
components/contributors/Contributors.tsx, pages/community/contributors.tsx
New React component (default export) that fetches AsyncAPI repositories (pagination, search), loads per-repo contributors (with client-side username filter), handles loading/errors, and is wrapped by a Next.js page using GenericLayout.
Icon
components/icons/GitFork.tsx
New SVG React component IconGitFork (default export) rendering a git fork icon with optional className and style props.
Navigation
components/navigation/communityItems.tsx
Added a "Contributors" navigation item linking to /community/contributors and imported the users icon.
Dependencies
package.json
Added framer-motion dependency (version ^12.23.25) for animations.

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant Browser
    participant Page as Contributors Page
    participant GH as GitHub API
    participant UI as UI Renderer

    User->>Browser: Navigate to /community/contributors
    Browser->>Page: mount
    Page->>GH: fetch repositories (page, per_page)
    GH-->>Page: repositories list + metadata
    Page->>UI: render repositories list (search, pagination controls)

    User->>UI: Search or change page
    UI->>Page: update filters/pagination
    Page->>Page: filter repos (client-side) / fetch new page

    User->>UI: Select repository
    UI->>Page: request contributors for repo
    Page->>GH: fetch contributors for repo
    GH-->>Page: contributors list
    Page->>UI: render contributors (with avatar, counts)

    User->>UI: Filter contributors by username
    UI->>Page: apply contributor filter
    Page->>UI: render filtered contributors

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

  • Pay attention to: repo/contributor fetch logic and pagination, error/loading states, GitHub API rate/error handling, framer-motion usage in UI.

Possibly related issues

  • asyncapi/website#4658 β€” Implements the Contributors page and related components; appears directly related.

Possibly related PRs

  • asyncapi/website#4127 β€” Related changes to community navigation entries; overlaps in communityItems modifications.

Suggested reviewers

  • derberg
  • devilkiller-ag
  • akshatnema
  • sambhavgupta0705
  • vishvamsinh28
  • anshgoyalevil
  • asyncapi-bot-eve
  • Mayaleeeee

Poem

🐰
I hopped to fetch the repos bright,
Listed stars and forks in light,
I nudged the nav and drew a fork,
Called contributors after the fork,
Happy hops β€” the community’s in sight!

Pre-merge checks and finishing touches

βœ… Passed checks (3 passed)
Check name Status Explanation
Description Check βœ… Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check βœ… Passed The title accurately and concisely summarizes the main change: adding a new centralized contributors page to the AsyncAPI website.
Docstring Coverage βœ… Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.

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 and usage tips.

coderabbitai[bot] avatar Dec 05 '25 18:12 coderabbitai[bot]

⚑️ Lighthouse report for the changes in this PR:

Category Score
πŸ”΄ Performance 36
🟒 Accessibility 98
🟒 Best practices 92
🟒 SEO 100
πŸ”΄ PWA 33

Lighthouse ran on https://deploy-preview-4682--asyncapi-website.netlify.app/

asyncapi-bot avatar Dec 05 '25 18:12 asyncapi-bot

hey maintainers, ive tried my best to fix the issues, now can you guide me what else i should do from here.. is it good to go?? @derberg @akshatnema @anshgoyalevil

Shubhashish-Chakraborty avatar Dec 05 '25 18:12 Shubhashish-Chakraborty