Skip to content

Latest commit

 

History

History
97 lines (67 loc) · 3.49 KB

CONTRIBUTING.md

File metadata and controls

97 lines (67 loc) · 3.49 KB

Contributing to gravity-sdk

We're thrilled that you're interested in contributing to GCEI! This document provides guidelines for contributing to the project. Following these guidelines helps to communicate that you respect the time of the developers managing and developing this open source project.

Table of Contents

  1. Code of Conduct
  2. Getting Started
  3. How Can I Contribute?
  4. Style Guidelines
  5. Commit Messages
  6. Pull Requests
  7. Reporting Bugs
  8. Suggesting Enhancements

Code of Conduct

This project and everyone participating in it is governed by our Code of Conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to [email protected].

Getting Started

  • Make sure you have a GitHub account
  • Fork the repository on GitHub
  • Clone your fork locally
  • Set up the development environment (refer to the README.md for instructions)

How Can I Contribute?

Reporting Bugs

  • Ensure the bug was not already reported by searching on GitHub under Issues
  • If you're unable to find an open issue addressing the problem, open a new one

Suggesting Enhancements

  • Open a new issue with a clear title and detailed description
  • Provide any relevant examples or mock-ups if possible

Pull Requests

  1. Create a new branch from main for your changes
  2. Make your changes in your branch
  3. Add or update tests as necessary
  4. Ensure the test suite passes
  5. Push your branch and submit a pull request to main
  6. Wait for review and address any comments

Style Guidelines

Rust Code Style

  • Follow the Rust Style Guide
  • Use rustfmt to format your code
  • Run clippy and address any lints before submitting your code

Documentation Style

  • Use clear and concise language
  • Provide examples where appropriate
  • Keep comments up-to-date with code changes

Commit Messages

  • Use the present tense ("Add feature" not "Added feature")
  • Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
  • Limit the first line to 72 characters or less
  • Reference issues and pull requests liberally after the first line

Pull Requests

  • Fill in the required template
  • Do not include issue numbers in the PR title
  • Include screenshots and animated GIFs in your pull request whenever possible
  • Follow the Rust style guides
  • End all files with a newline

Reporting Bugs

When filing an issue, make sure to answer these questions:

  1. What version of Rust are you using?
  2. What operating system and processor architecture are you using?
  3. What did you do?
  4. What did you expect to see?
  5. What did you see instead?

Suggesting Enhancements

Enhancement suggestions are tracked as GitHub issues. When creating an enhancement suggestion, please provide the following information:

  • Use a clear and descriptive title for the issue
  • Provide a step-by-step description of the suggested enhancement
  • Provide specific examples to demonstrate the steps
  • Describe the current behavior and explain which behavior you expected to see instead and why
  • Explain why this enhancement would be useful to most GCEI users

Thank you for contributing to GCEI!