Files
NebulaBrowser/documentation/CONTRIBUTING.md
T
andrew e199380e64 Add project documentation and update README
Added detailed documentation files for code of conduct, contributing guidelines, core concepts, features, and project structure in the documentation/ directory. Updated README.md to reference new documentation, expand feature descriptions, and clarify setup instructions.
2025-07-28 14:39:38 +12:00

2.9 KiB

Contributing to Nebula

First off, thank you for considering contributing to Nebula! It's people like you that make open source such a great community.

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. Be sure to include a title and clear description, as much relevant information as possible, and a code sample or an executable test case demonstrating the expected behavior that is not occurring.

Suggesting Enhancements

  • Open a new issue to discuss your enhancement. Please provide a clear description of the enhancement and its potential benefits.

Pull Requests

  1. Fork the repository to your own GitHub account.
  2. Clone the project to your machine.
  3. Create a new branch for your changes:
    git checkout -b feature/your-feature-name
    
  4. Make your changes and commit them with a clear, descriptive commit message:
    git commit -m "Add some feature"
    
  5. Push your branch to your fork:
    git push origin feature/your-feature-name
    
  6. Open a pull request to the main branch of the original repository. Provide a clear title and description for your pull request, explaining the changes you've made.

Styleguides

Git 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.

Code of Conduct

We have a Code of Conduct that all contributors are expected to follow. Please make sure you are familiar with its contents.

JavaScript Styleguide

  • All JavaScript must adhere to StandardJS. This helps us maintain a consistent coding style.
  • Use soft-tabs with a two-space indent.
  • Prefer single quotes ' over double quotes ".
  • No semicolons.
  • For more details, please refer to the StandardJS rules.

CSS Styleguide

  • Follow a BEM-like naming convention for classes (block__element--modifier).
  • Use soft-tabs with a two-space indent.
  • Write selectors and their properties on separate lines.
  • Organize properties logically (e.g., positioning, box model, typography, visual).
  • Use rem for font sizes and px for borders.
  • Use === and !== instead of == and != for comparisons.
  • Always declare variables with const or let instead of var.
  • Use arrow functions instead of function where appropriate.
  • Prefer template literals over string concatenation.