rustere

Rust Template repository

GitHub release Build status licence

DescriptionInstallUsageUse this templateContribute

Description

**`rustere`** stands for **Rus**t **te**mplate **re**pository. It's just a template repository for Rust, with the following features : * :octocat: CI with [Github actions](https://github.com/features/actions) : * Code formatting * Code checks * Unit-tests * 📝 Issues & PR templates * 🤖 Stale bot & Dependabot * 🚀 Releases automatically published to [crates.io](https://crates.io/)

Install

Install `rustere` by running : ``` cargo install rustere ```

Usage

`rustere` does not contain any useful code because it's a template repository. But you can run the following command to check if the package was correctly installed : ```console rustere ```

Use this template

To use this template, click the button "Use this template" :

Use template

It will prompt you to create a new Github repository. Then replace the content in your freshly created repository, with your own package name, own code, and update the links to point to your own repository. --- Here is an exhaustive list of things to do : * **Add your content** : * **Change `cargo.toml`** : Replace the name of the package, the version, the author, the description, and the homepage. * **Replace `README.md`** : You can keep the same README outline, but you must update the core content to fit what you're building. Make sure to replace any occurence of `astariul` with your own username, and replace any occurence of `rustere` with the name of your package. * **Add your code** : Erase the content of `src/main.rs` and `src/lib.rs` and put your own code. * **Replace the tests** : Replace the content of `tests/integration_tests.rs` with actual tests. * **Update names and links in `.github/` folder** : * In `.github/ISSUE_TEMPLATE/bug.yaml`, replace `rustere` with the name of your package. * In `.github/ISSUE_TEMPLATE/config.yml`, replace `astariul/rustere` by your own `/`. * Optionally, if there are some features you don't want (like Github action that automatically release your code to `crates.io`), you can remove it ! * **Enable Dependabot** : From the Github website, on your repository page, you can enable [Dependabot](https://docs.github.com/en/code-security/dependabot/dependabot-security-updates/configuring-dependabot-security-updates#enabling-or-disabling-dependabot-security-updates-for-an-individual-repository) by going to the `Settings` tab of your repository, then in the `Security & analysis` section you can enable `Dependabot alerts` and `Dependabot security updates`. * **Add your `crates.io` API token** : The Github action that automatically publish your package to `crates.io` requires your [API token](https://crates.io/settings/tokens). You can store this API token in a [Github secret](https://docs.github.com/en/actions/security-guides/encrypted-secrets). To do this, go to the `Settings` tab of your Github repository, then go to the `Secrets` section, and click the button `New repository secret`. Then set the name of the secret as `CARGO_REGISTRY_TOKEN`, and paste your API token in the value field.

Contribute

To contribute, install the package locally, create your own branch, add your code (and tests, and documentation), and open a PR ! ### Code formatting Ensure the code you added is properly formatted with : ```console cargo fmt ``` ### Tests When you contribute, you need to make sure all the unit-tests pass. You should also add tests if necessary ! You can run the tests with : ```console cargo test ``` ### Documentation The documentation should be kept up-to-date. You can visualize the documentation locally by running : ```console cargo doc --open ```