Skip to content

CONTRIBUTION CHECKLIST #6

Description

@sudipsudip001

📝 Contribution Guide

This document outlines the process each developer must follow to contribute to the project.
Following this guide ensures that contributions are organized, descriptive, and transparent for mentors and teammates.


1. Issue Creation

  • Check if an issue already exists for your feature/bugfix.
  • If not, create a new issue with:
    • Title: Short and clear (e.g., Add user login page).
    • Description: Explain what and why you’re implementing.
    • Acceptance Criteria: What should be working when complete.
    • Labels: Add appropriate labels (e.g., feature, bug, enhancement).

2. Pull the latest changes

  • Switch to the latest dev branch:
    git checkout dev
    git pull origin dev
    

3. Feature Branch Setup

  • Create a feature branch named after the issue:
     <issue-number>-<issuer-name>/<issue-type>/<short-description>
    e.g.
     git checkout -b 6-ss/feat/create-contribution-checklist
  • Use these issue types:
    • feat: New feature
    • fix: Bug fix
    • docs: Documentation only
    • refactor: Code restructure without changing behavior
    • test: Adding/updating tests
      Note: Branch names don't use : symbol so it has been changed.

4. Development & Code Standards

  • Write clear, modular, and documented code:
    • Use meaningful variable/function names.
    • Add comments for non-obvious logic.
    • Keep functions/classes small and focused.
    • Use UV package and project manager.
  • Follow project coding conventions (naming, style, formatting).
  • Add/Update tests (if the project includes testing).
  • Run linting/formatting before committing (Use ruff code formatter).

5. Commit Messages

  • Make commits small and descriptive.
  • Follow this format:
    <issue-number>-<issuer-name>/<issue-type>: <short description>
    e.g.
    12-ss/feat: add login form
  • Use these commit types:
    • feat: New feature
    • fix: Bug fix
    • docs: Documentation only
    • refactor: Code restructure without changing behavior
    • test: Adding/updating tests

6. Push and Pull request

  • Push your branch
    git push origin <branch-name>
    e.g.
    git push origin 12-ss/feat/add-login-form
  • Open a Pull Request (PR) → dev branch:
    • Title: Match the commit style → <issue-number>-<issuer-name>/<issue-type>: <short description>
    • Description:
      • Link the issue with Closes #<issue-number>
      • Summarize what you did and why.
      • Mention any challenges or important notes.
    • Checklist in PR description:
      • Code compiles & runs
      • Tests written/updated
      • Code reviewed locally (self-check)
  • Request a mentor/reviewer.

7. Review and Merge

  • Respond to review comments (discuss, update code, push again).
  • Keep your branch up-to-date with dev if conflicts appear:
    git fetch origin
    git merge origin/dev
  • Once approved → PR is merged into dev.

8. After Merge

  • Delete your feature branch from GitHub (cleanup) and local branch too.
  • Pull latest dev to stay updated:
    git checkout dev
    git pull origin dev
    

Congrats, repeat the process for next contribution!!!

Metadata

Metadata

Labels

documentationImprovements or additions to documentationenhancementNew feature or request

Type

Fields

No fields configured for Task.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions