65 lines
2.4 KiB
Markdown
Executable File
65 lines
2.4 KiB
Markdown
Executable File
# Contributing to Deskify
|
|
|
|
First off, thank you for considering contributing to Deskify! It's people like you that make Deskify such a great tool.
|
|
|
|
`deskify` is currently in an **Alpha / Early MVP** phase. Contributions that improve reliability, error handling, tests, and Linux compatibility are especially valuable.
|
|
|
|
## How Can I Contribute?
|
|
|
|
### Reporting Bugs
|
|
This section guides you through submitting a bug report for Deskify. Following these guidelines helps maintainers and the community understand your report, reproduce the behavior, and find related reports.
|
|
|
|
* Use a clear and descriptive title for the issue to identify the problem.
|
|
* Describe the exact steps which reproduce the problem in as many details as possible.
|
|
* Provide specific examples to demonstrate the steps.
|
|
|
|
### Suggesting Enhancements
|
|
This section guides you through submitting an enhancement suggestion for Deskify, including completely new features and minor improvements to existing functionality.
|
|
|
|
* Use a clear and descriptive title for the issue to identify the suggestion.
|
|
* Provide a step-by-step description of the suggested enhancement in as many details as possible.
|
|
* Explain why this enhancement would be useful to most Deskify users.
|
|
|
|
### Pull Requests
|
|
* Fill in the required template
|
|
* Do not include issue numbers in the PR title
|
|
* Include screenshots only when UI/desktop integration behavior is relevant.
|
|
* Follow the Rust styleguide (`cargo fmt`).
|
|
* Document new code based on the existing documentation style.
|
|
* End all files with a newline.
|
|
* Prefer small, focused PRs (one behavioral change per PR).
|
|
|
|
## Development Setup
|
|
1. Deskify relies on `tauri`. Ensure `tauri-cli` is installed via `cargo install tauri-cli`.
|
|
2. Ensure you have the standard Tauri dependencies for Linux (WebKit2GTK, etc.).
|
|
3. Clone the repository and run `cargo build` to test your changes.
|
|
4. Run `cargo clippy` to check for common mistakes and improve your Rust code.
|
|
|
|
## Local Checks Before Opening a PR
|
|
|
|
Run these checks locally before submitting a pull request:
|
|
|
|
```bash
|
|
cargo fmt --check
|
|
cargo clippy --all-targets --all-features -- -D warnings
|
|
cargo test
|
|
cargo check
|
|
```
|
|
|
|
## Manual Smoke Test (Recommended for Behavior Changes)
|
|
|
|
If your change affects build/install/list/remove behavior, run a quick smoke test:
|
|
|
|
```bash
|
|
deskify build --url "https://example.com" --name "Example"
|
|
deskify list
|
|
deskify remove example
|
|
```
|
|
|
|
Also verify invalid IDs are rejected safely:
|
|
|
|
```bash
|
|
deskify remove ../foo
|
|
deskify remove FooBar
|
|
```
|