README: Document features of the template
This commit is contained in:
parent
5109ded804
commit
e483187f36
1 changed files with 35 additions and 2 deletions
37
README.md
37
README.md
|
@ -1,3 +1,36 @@
|
|||
# My Project
|
||||
# My Rust Project
|
||||
|
||||
This is a template for generic new projects.
|
||||
This is an opinionated template for rust projects using Nix.
|
||||
|
||||
## Template features
|
||||
|
||||
- CI template for Woodpecker.
|
||||
- Forgejo commit message templates.
|
||||
- Linting and formatting.
|
||||
- Nix-centered development environment.
|
||||
- Include language servers and all tooling in Nix dev shell.
|
||||
|
||||
### Rust Opinions
|
||||
|
||||
- [rust-overlay](https://github.com/oxalica/rust-overlay) to manage rust version.
|
||||
- [nextest](https://nexte.st) for running tests.
|
||||
- [mold](https://github.com/rui314/mold) for faster linking.
|
||||
- [rustfmt](https://github.com/rust-lang/rustfmt) for code formatting.
|
||||
- [clippy](https://github.com/rust-lang/rust-clippy) for linting.
|
||||
|
||||
## Dev tools by default
|
||||
|
||||
- [direnv](https://direnv.net) for automatic dev shell activation.
|
||||
- [Bacon](https://dystroy.org/bacon/) - automatic and minimal interaction code checker.
|
||||
- [cargo-machete](https://github.com/bnjbvr/cargo-machete) for removing unused dependencies.
|
||||
- [hyperfine](https://github.com/sharkdp/hyperfine) for simple benchmarking.
|
||||
- [just](https://just.systems/man/en/) for running things and discovery.
|
||||
- [watchexec](https://github.com/watchexec/watchexec) (and [cargo-watch](https://github.com/watchexec/cargo-watch)) for watching files and running commands.
|
||||
|
||||
### Nix opinions
|
||||
|
||||
- [Crane](https://github.com/ipetkov/crane) for incremental artifact builds and nice set of checks.
|
||||
- [Advisory-db](https://github.com/rustsec/advisory-db)
|
||||
for automatic checking of vulnerabilities of dependencies.
|
||||
- [nix-filter](https://github.com/numtide/nix-filter) allows filtering out files from the source input for a project.
|
||||
- [treefmt](https://github.com/numtide/treefmt-nix) supports automatic code formatting of all kinds of source code.
|
||||
|
|
Loading…
Add table
Reference in a new issue