Updated to 0.2.0
This commit is contained in:
@@ -0,0 +1,116 @@
|
||||
markdown
|
||||
---
|
||||
sidebar_position: 3
|
||||
title: Contributing
|
||||
---
|
||||
|
||||
# Contributing to OSUI
|
||||
|
||||
We welcome and appreciate contributions from the community! Whether it's reporting bugs, suggesting features, improving documentation, or submitting code, your help makes OSUI better for everyone.
|
||||
|
||||
## How to Contribute
|
||||
|
||||
### 1. Report Bugs
|
||||
|
||||
If you find a bug, please open an issue on our [GitHub repository](https://github.com/osui-rs/osui/issues). When reporting a bug, please include:
|
||||
|
||||
* A clear and concise description of the bug.
|
||||
* Steps to reproduce the behavior.
|
||||
* Expected behavior.
|
||||
* Actual behavior.
|
||||
* Your OSUI version, Rust version, and operating system.
|
||||
* Any relevant code snippets or error messages.
|
||||
|
||||
### 2. Suggest Features
|
||||
|
||||
Have an idea for a new feature or improvement? Feel free to open an issue on GitHub to discuss it. Please provide:
|
||||
|
||||
* A clear and concise description of the proposed feature.
|
||||
* Why you think it would be valuable to OSUI.
|
||||
* Any potential use cases or examples.
|
||||
|
||||
### 3. Improve Documentation
|
||||
|
||||
Good documentation is vital for any library. If you find errors, omissions, or areas that could be explained more clearly in our docs, please consider:
|
||||
|
||||
* Opening an issue to point out the specific area.
|
||||
* Submitting a pull request with your suggested improvements.
|
||||
|
||||
### 4. Contribute Code
|
||||
|
||||
If you'd like to contribute code, here's the general workflow:
|
||||
|
||||
#### Fork the Repository
|
||||
|
||||
First, fork the [osui-rs/osui](https://github.com/osui-rs/osui) repository to your own GitHub account.
|
||||
|
||||
#### Clone Your Fork
|
||||
|
||||
```bash
|
||||
git clone https://github.com/YOUR_USERNAME/osui.git
|
||||
cd osui
|
||||
```
|
||||
|
||||
#### Create a New Branch
|
||||
|
||||
Create a new branch for your feature or bug fix. Use a descriptive name:
|
||||
|
||||
```bash
|
||||
git checkout -b feature/my-awesome-feature
|
||||
# or
|
||||
git checkout -b bugfix/fix-rendering-issue
|
||||
```
|
||||
|
||||
#### Make Your Changes
|
||||
|
||||
* Write clean, idiomatic Rust code.
|
||||
* Follow existing code style and conventions.
|
||||
* Add comments where necessary to explain complex logic.
|
||||
* **Write Tests**: If you're adding new features or fixing bugs, please include appropriate unit and/or integration tests to cover your changes.
|
||||
* **Update Documentation**: If your changes affect the public API or add new functionality, please update the relevant documentation files.
|
||||
|
||||
#### Run Tests
|
||||
|
||||
Before submitting a pull request, ensure all existing tests pass and your new tests pass:
|
||||
|
||||
```bash
|
||||
cargo test --workspace
|
||||
```
|
||||
|
||||
#### Format and Lint
|
||||
|
||||
Make sure your code is formatted correctly and passes lint checks:
|
||||
|
||||
```bash
|
||||
cargo fmt --all
|
||||
cargo clippy --all-targets --all-features
|
||||
```
|
||||
|
||||
#### Commit Your Changes
|
||||
|
||||
Commit your changes with clear and concise commit messages. A good commit message explains *what* changed and *why*.
|
||||
|
||||
```bash
|
||||
git commit -m "feat: Add new awesome feature"
|
||||
# or
|
||||
git commit -m "fix: Resolve rendering issue on Windows"
|
||||
```
|
||||
|
||||
#### Push to Your Fork
|
||||
|
||||
```bash
|
||||
git push origin feature/my-awesome-feature
|
||||
```
|
||||
|
||||
#### Create a Pull Request
|
||||
|
||||
Go to the [osui-rs/osui](https://github.com/osui-rs/osui) repository on GitHub and open a new pull request.
|
||||
* Provide a clear title and description for your pull request.
|
||||
* Reference any related issues (e.g., "Fixes #123" or "Closes #456").
|
||||
* The project maintainers will review your PR, provide feedback, and work with you to get it merged.
|
||||
|
||||
## Code of Conduct
|
||||
|
||||
Please note that this project is released with a [Contributor Code of Conduct](https://github.com/osui-rs/osui/blob/main/CODE_OF_CONDUCT.md). By participating in this project, you agree to abide by its terms.
|
||||
|
||||
Thank you for considering contributing to OSUI! Your efforts help foster a vibrant and robust TUI ecosystem in Rust.
|
||||
Reference in New Issue
Block a user