Skip to content

Latest commit

 

History

History
111 lines (73 loc) · 3.11 KB

File metadata and controls

111 lines (73 loc) · 3.11 KB

HardwareVisualizer Contributing Guide

Linted with Biome

Thank you for your interest in contributing!
HardwareVisualizer is an open-source project, and we welcome improvements from the community.

How to Contribute

  • New features: Please create an Issue before opening a Pull Request.
  • Small fixes / refactoring: An Issue is optional.
  • Bug reports and ideas: Opening an Issue is also a great contribution.

Bug Report

Create Issue

Feature Request

Create Issue

Pull Request Guidelines

HardwareVisualizer automatically assigns labels based on the branch name.
Branch naming convention:

  • Features: feat/<short-description-or-issue-number> or feature/<short-description-or-issue-number>
  • Bug fixes: fix/<short-description-or-issue-number>
  • Documentation: docs/<short-description-or-issue-number>
  • Refactoring: refactor/<short-description-or-issue-number>
  • Performance: perf/<short-description-or-issue-number>
  • Other: chore/<short-description-or-issue-number>

PR branch names are validated by CI. Tool-dependent prefixes such as codex/ or claude/ are not accepted; choose a project prefix that matches the change type before pushing or opening the PR.

Labels are grouped by purpose. Use the GitHub label guide when triaging issues or checking pull request labels.

When submitting a Pull Request (PR), please:

  • Provide a concise description of the change
  • Link any related Issue (if applicable)
  • Ensure CI checks pass

Development Guide

Project documentation is indexed in docs/README.md. Use the documentation guide when adding or moving documentation.

Setup

Development requires the following tools:

In addition, you will need the Tauri system dependencies. Please make sure to install these as well.

Next, install the dependencies:

npm ci

Run Development App

npm run tauri dev

Production Build

npm run tauri build

Run linting, formatting, and tests locally before opening a PR

If there are errors in linting, formatting, or tests, the PR cannot be merged.
Run these before opening a PR:

For JavaScript/TypeScript:

npm run lint
npm run format
npm test

For Rust:

cargo tauri-fmt
cargo tauri-lint
cargo tauri-test

Note: We use Cargo aliases defined at the project root (.cargo/config.toml).

Security

If you discover a vulnerability, do not open a public issue. Instead, please contact the maintainer directly via GitHub or via email at: m11c3.sh@gmail.com.

License

By contributing to HardwareVisualizer, you agree that your contributions will be licensed under the MIT License.