Thanks for your interest in contributing to ros2_medkit_web_ui! This guide explains how to report issues, suggest features, and contribute code.
- Ensure the bug was not already reported by searching Issues
- If you can't find an existing issue, open a new one and select the Bug report template
- Fill in all sections of the template:
- Steps to reproduce - numbered steps to recreate the issue
- Expected behavior - what you expected to happen
- Actual behavior - what actually happened, including error messages or stack traces
- Environment - ros2_medkit_web_ui version, browser, OS
- Additional information - logs, snippets, or screenshots if helpful
- Check if the feature has already been suggested in Issues
- If not, open a new issue and select the Feature request / General issue template
- Fill in all sections:
- Proposal - describe the change or feature you'd like to see
- Motivation - why is this important? Who does it benefit?
- Alternatives considered - other options or implementations you considered
- Additional context - any other context or screenshots
- Fork the repository and clone your fork locally
- Create a branch from
mainwith a descriptive name:feature/short-descriptionfor new featuresfix/short-descriptionfor bug fixesdocs/short-descriptionfor documentation changes
- Install dependencies:
npm install - Make your changes following the project's coding standards
- Test your changes locally:
npm run dev - Run linting:
npm run lint - Build the project:
npm run build - Commit your changes with clear, descriptive commit messages
- Push your branch to your fork
- Open a Pull Request against the
mainbranch of this repository
- Use clear and descriptive commit messages
- Start with a verb in imperative mood (e.g., "Add", "Fix", "Update", "Remove")
- Keep the first line under 72 characters
- Add a blank line followed by a more detailed explanation if needed
Examples:
Add server connection dialog with URL validation
Fix entity tree not expanding on click
Update documentation for Docker deployment
Before opening or updating a Pull Request, you must:
-
Install dependencies:
npm install
-
Run linting:
npm run lint
-
Build the project successfully:
npm run build
-
Ensure the app works locally:
npm run dev
Before submitting your PR, ensure:
- Code follows the repository's style and conventions
- Build succeeds without warnings
- Linting passes
- New functionality has been tested manually
- Documentation is updated where applicable
- PR description clearly explains what changed and why
- Related issue is referenced (e.g., "Fixes #123")
- The project maintainers will review pull requests as time permits
- Address review feedback promptly
- Keep discussions professional and constructive
- Be patient - maintainers may need time to review
- Purely cosmetic changes that don't add functionality (whitespace, formatting without other changes)
- Large refactors without prior discussion - open an issue first
- Breaking changes without coordination with maintainers
- Code that doesn't pass linting or breaks existing functionality
- For questions about using ros2_medkit_web_ui, open a Discussion or an Issue with the question label
- For questions about contributing, feel free to ask in your PR or Issue
- For security vulnerabilities, see
SECURITY.md
By contributing to ros2_medkit_web_ui, you agree to abide by our Code of Conduct. Please be respectful and considerate in all interactions.
By contributing to ros2_medkit_web_ui, you agree that your contributions will be licensed under the Apache License 2.0.
Thank you for improving ros2_medkit_web_ui! We value contributions of all sizes - from typo fixes to major features. 🚀