diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000..2be5b98 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,23 @@ +--- +name: Bug report +about: Report a problem with NotAlterra +title: '' +labels: bug +assignees: '' +--- + +**Describe the bug** +What happened and what did you expect to happen? + +**Steps to reproduce** +1. +2. +3. + +**Environment** +- OS: (e.g. Windows 11, Ubuntu 24.04) +- NotAlterra version: (shown in the title bar) +- Subnautica 2 install: (Steam, Xbox, Epic, custom) + +**Logs** +If available, attach `transaction.log` (located next to the binary). diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 0000000..42508b2 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,19 @@ +--- +name: Feature request +about: Suggest an improvement for NotAlterra +title: '' +labels: enhancement +assignees: '' +--- + +**What problem would this solve?** +A clear description of the pain point. + +**Proposed solution** +What would you like NotAlterra to do? + +**Alternatives considered** +Any workarounds or alternative approaches you've tried. + +**Additional context** +Screenshots, references to other save managers, or anything relevant. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..fa73d63 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,64 @@ +# Contributing to NotAlterra + +Thanks for considering a contribution. NotAlterra is maintained by a single +developer and every improvement — code, documentation, design, or testing — +is appreciated. + +## Getting Started + +1. **Fork** the repository and clone it locally. +2. **Build** with `cargo build`. +3. **Run the test suite** with `cargo test`. +4. **Read the docs** at [https://forkless.github.io/NotAlterra/notalterra/](https://forkless.github.io/NotAlterra/notalterra/). + +## Making Changes + +- Work on a **feature branch** from `master`. +- Keep changes focused — one logical change per pull request. +- Write or update **inline documentation** for any new or modified function. + The check script `python3 tests/_check.py` enforces 100% doc coverage. +- Add **tests** for new behaviour. Integration tests live in `tests/`, + unit tests are inline in `src/`. +- Run `cargo fmt` before committing if you have `rustfmt` installed. + +## Commit Convention + +Commits should be atomic and descriptive. No strict format required, but +clear messages help reviewers. Example: + +``` +Add timeout to save-folder discovery scan + +The scan can hang on slow network shares. Added a +5-second per-drive timeout with a warning to the user. +``` + +## Pull Requests + +1. Push your branch and open a PR against `master`. +2. GitHub Actions will run checks and tests automatically. +3. A maintainer will review within a few days. +4. All PRs must pass CI before merging. + +## Code of Conduct + +Be respectful. Be constructive. Assume good intent. + +NotAlterra is a small project built by someone learning as they go. +Questions are welcome, patience is appreciated, and kindness is +non-negotiable. + +## AI-Assisted Contributions + +NotAlterra uses agentic AI tools in its development process. If you use AI +assistance in your contribution: + +- **Review everything** the AI generates before submitting. +- **Do not** submit AI-generated changes you do not understand. +- **Disclose** significant AI usage in your PR description. +- The same quality standards apply regardless of how code is generated. + +## Need Help? + +Open a [discussion](https://github.com/forkless/NotAlterra/discussions) or +file an issue with the "question" label. No question is too basic.