Skip to content

feat: contributor profile pages in the community section have no standard template β€” each contributor page has a different structure, making it hard to compare contributions and onboard new contributorsΒ #1966

Description

@divyanshim27

πŸš€ Problem Statement

The community/ directory contains community documentation. RecodeHive actively encourages community contributions through its GSSoC participation and has a Contributors section showing all contributors.

However, based on the project structure, there is no standard template or schema for what a "contributor profile" page should contain. This means:

  • Some contributors might have full profiles (bio, skills, social links, contributions list)
  • Others have minimal entries (just a GitHub username)
  • New contributors don't know what to put in their profile PR
  • The site can't programmatically generate contribution stats or badges

Proposed Fix

1. Create a contributor-template.md in community/

<!-- community/contributor-template.md -->
---
id: your-github-username
name: Your Full Name
github: https://github.com/your-username
linkedin: https://linkedin.com/in/your-profile  # Optional
twitter: https://x.com/your-handle              # Optional
avatar: https://github.com/your-username.png
skills:
  - Git
  - Python
  - React
bio: "One to two sentences about yourself and what you're working on."
contributions:
  - "Fixed XYZ bug in the docs pipeline"
  - "Added tutorial on Git rebasing"
---

# Your Name

Brief introduction paragraph...

2. Add a src/data/contributors.ts schema for programmatic use

// src/data/contributors.ts
export interface Contributor {
  id: string;
  name: string;
  github: string;
  linkedin?: string;
  avatar: string;
  skills: string[];
  bio: string;
  contributions: string[];
}

3. Create a Contributors Gallery page component

// src/pages/contributors.tsx
import contributors from '../data/contributors';

export default function ContributorsPage() {
  return (
    <div className="contributors-grid">
      {contributors.map(c => (
        <ContributorCard key={c.id} contributor={c} />
      ))}
    </div>
  );
}

This transforms contributor recognition from a static image grid to a searchable, filterable gallery.

Files to Create/Modify

File Change
community/contributor-template.md New standard template
src/data/contributors.ts New TypeScript schema
src/pages/contributors.tsx New Contributors Gallery page
community/contributing-guidelines.md Link to the template

Suggested labels: enhancement, documentation, frontend, good first issue

I would like to work on this. Could you please assign it to me?

Metadata

Metadata

Assignees

No one assigned

    Labels

    level 110 pointsrecodethis is label for leaderboard

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions