Skip to content

Latest commit

 

History

History
172 lines (131 loc) · 6.04 KB

File metadata and controls

172 lines (131 loc) · 6.04 KB

Contributing to Gssoc FAQ

Thank you for your interest in contributing to this project! We welcome contributions from developers of all skill levels, including participants in GSSoC'25 (GirlScript Summer of Code 2025) and the broader open-source community.

How to Contribute

Step 1: Fork the Repository

  1. Navigate to the main repository page on GitHub
  2. Click the "Fork" button in the top-right corner
  3. This creates a copy of the repository in your GitHub account

Step 2: Clone Your Fork

Clone the forked repository to your local machine:

git clone https://github.com/YOUR-USERNAME/REPOSITORY-NAME.git
cd REPOSITORY-NAME

Step 3: Create a New Branch

Always create a new branch for your work. Never commit directly to the main branch:

git checkout -b your-branch-name

Use descriptive branch names like:

  • feature/add-login-page
  • fix/navbar-responsive-issue
  • docs/update-readme

Step 4: Make Your Changes

  • Write clean, readable code
  • Follow the existing code style and structure
  • Test your changes thoroughly before committing
  • Ensure your changes do not break existing functionality

Step 5: Commit Your Changes

Write clear and meaningful commit messages:

git add .
git commit -m "Brief description of changes"

Good commit message examples:

  • Add user authentication feature
  • Fix responsive design issue in header
  • Update documentation for API endpoints

Avoid vague messages like:

  • Update
  • Fix bug
  • Changes made

Step 6: Push Your Changes

Push your branch to your forked repository:

git push origin your-branch-name

Step 7: Create a Pull Request

  1. Go to your forked repository on GitHub
  2. Click "Compare & pull request"
  3. Fill out the pull request template with all required information
  4. Add a clear title and description of your changes
  5. Link the related issue using keywords like Closes #issue-number or Fixes #issue-number
  6. Attach proof of work (screenshots or videos showing before/after changes)
  7. Submit the pull request

Pull Request Guidelines

Required Information

Every pull request must include:

  • Clear title describing the change
  • Detailed description of what was changed and why
  • Reference to the related issue number
  • Proof of work (screenshots or video demonstration)
  • Confirmation that the code has been tested

Before Submitting

  • Ensure your code follows the project's coding standards
  • Test all functionality affected by your changes
  • Update documentation if you are adding new features
  • Make sure your branch is up to date with the main branch
  • Resolve any merge conflicts before submitting

Commit Message Guidelines

  • Use present tense ("Add feature" not "Added feature")
  • Keep the first line under 50 characters
  • Provide additional details in the body if necessary
  • Reference issues and pull requests when relevant

Code Review Process

  • Maintainers will review your pull request
  • You may be asked to make changes or clarifications
  • Address all review comments promptly
  • Once approved, your pull request will be merged

Recognition and Badges

Contributors who successfully submit merged pull requests will receive:

  • Pro Github Contributor Badge: Awarded for quality contributions
  • Dev Slayer Badge: Awarded for significant contributions to the project

These badges recognize your valuable contributions to the open-source community.

Code of Conduct

This project adheres to the Contributor Covenant Code of Conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to the project maintainers.

Reference: Contributor Covenant

Types of Contributions

Bug Reports

  • Use the issue tracker to report bugs
  • Describe the bug clearly with steps to reproduce
  • Include screenshots or error messages if applicable
  • Specify your environment (OS, browser, version)

Feature Requests

  • Submit feature requests through the issue tracker
  • Clearly describe the feature and its benefits
  • Explain why this feature would be useful to the project

Code Contributions

  • Look for issues labeled good first issue or help wanted
  • GSSoC'25 participants should look for issues labeled Gssoc2025
  • Always discuss major changes in an issue before starting work

Documentation

  • Improve existing documentation
  • Add examples and clarifications
  • Fix typos and grammatical errors
  • Ensure documentation stays up to date with code changes

Testing Guidelines

Before submitting your pull request:

  1. Test all new features thoroughly
  2. Verify that existing functionality is not broken
  3. Test on different browsers/devices if applicable
  4. Include screenshots or videos demonstrating the changes

Getting Help

If you need help or have questions:

  • Check existing documentation and issues
  • Comment on the related issue for clarification
  • Reach out to maintainers through issue comments
  • Be patient and respectful when seeking assistance

Using the new interactive Issue forms

We now provide interactive GitHub Issue Forms to make filing bugs, feature requests, and questions easier and more structured. To create a new issue:

  1. Click the repository's "New issue" button on GitHub.
  2. Choose the appropriate form: "Bug report", "Feature request", or "Question / Support".
  3. Fill the required fields in the form — required fields will prevent submission until completed.

These forms automatically apply labels (e.g., bug, enhancement, question) to help maintainers triage incoming reports. If you prefer the old templates, legacy copies are preserved in .github/ISSUE_TEMPLATE/legacy/.

Important Notes

  • Do not submit AI-generated code without understanding and reviewing it
  • Ensure your contributions are original or properly attributed
  • Respect the project's coding style and conventions
  • Be responsive to feedback and review comments

License

By contributing to this project, you agree that your contributions will be licensed under the same license as the project.

Thank you for contributing to this project and being part of our open-source community!