3.1 KiB
Contributing to QuickStack
Thank you for your interest in contributing to QuickStack! We welcome contributions from the community and are excited to see what you will bring to the project.
How to Contribute
Reporting Bugs
If you find a bug, please create an issue in our GitHub Issues with the following information:
- A clear and descriptive title.
- A detailed description of the problem.
- Steps to reproduce the issue.
- Any relevant logs or screenshots.
Suggesting Enhancements
If you have an idea for a new feature or an enhancement to an existing feature, please create an issue in our GitHub Issues with the following information:
- A clear and descriptive title.
- A detailed description of the proposed enhancement.
- Any relevant examples or mockups.
Commit Convention
We use parts of the Conventional Commits specification for our commit messages.
The commit message should be structured as follows:
<type>: <description>
[optional body]
[optional footer]
The type should be one of the following:
feat: A new feature.fix: A bug fix.style: Changes that do not affect the meaning of the code (e.g. whitespace, formatting, etc.).refactor: Code changes that neither fix a bug nor add a feature.docs: Documentation changes.test: Adding or updating tests.chore: Changes to the build process or auxiliary tools.
The description should be a short, descriptive summary of the changes.
The body is optional and should provide more detailed information about the changes.
The footer is optional and should contain any breaking changes, issues closed, or other relevant information.
Here is an example of a commit message:
feat: add new feature
This is a more detailed description of the new feature.
BREAKING CHANGE: this is a breaking change
Submitting Pull Requests
If you would like to contribute code to QuickStack, please follow these steps:
- Fork the repository and create your branch from
main. - If you have added code that should be tested, add tests.
- Ensure the test suite passes.
- Make sure your code lints.
- Submit a pull request to the
mainbranch.
For each merged pull request a docker image for the canary tag will be created.
Running Tests
To run the tests locally, use the following command:
yarn test
Environment Setup
To setup a developement environment, use the provided devcontainer configuration. This will setup a development environment with all necessary dependencies and the correct node version.
Additionally to the devcontainer, you need a running k3s cluster.
To connect to your own k3s test cluster, provide the kuberentes credentials in the file k3s-config.yaml in the root of the project.
Install Dependencies
yarn install
Start Development Server
yarn dev
License
By contributing to QuickStack, you agree that your contributions will be licensed under the GPL-3.0 license.