-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCONTRIBUTING.md.jinja
More file actions
59 lines (47 loc) · 2.15 KB
/
CONTRIBUTING.md.jinja
File metadata and controls
59 lines (47 loc) · 2.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# Contributing
## :bug: Issues and bugs
The easiest way to contribute is to report issues or bugs that you might
find while using `{{ github_repo }}`. You can do this by creating a
[new](https://github.com/{{ github_repo_spec }}/issues/new/choose)
issue on our GitHub repository.
## :pencil2: Adding or modifying content
{% if is_seedcase_project -%}
If you would like to contribute content, please check out our
[guidebook](https://guidebook.seedcase-project.org/) for more specific
details on how we work and develop. It is a regularly evolving document,
so is at various states of completion.
{%- endif %}
To contribute to `{{ github_repo }}`, you first need to install
[uv](https://docs.astral.sh/uv/) and
[justfile](https://just.systems/man/en/packages.html). We use uv and
justfile to manage our project, such as to run checks and test the
template. Both the uv and justfile websites have a more detailed guide
on using uv, but below are some simple instructions to get you started.
It's easiest to install uv and justfile using
[pipx](https://pipx.pypa.io/stable/), so install that first. Then,
install uv and justfile by running:
``` bash
pipx install uv rust-just
```
We keep all our development workflows in the `justfile`, so you can
explore it to see what commands are available. To see a list of commands
available, run:
``` bash
just
```
As you contribute, make sure your changes will pass our tests by opening
a terminal so that the working directory is the root of this project's
repository and running:
``` bash
just run-all
```
When committing changes, please try to follow [Conventional
Commits](https://decisions.seedcase-project.org/why-conventional-commits/)
as Git messages. Using this convention allows us to be able to
automatically create a release based on the commit message by using
[Commitizen](https://decisions.seedcase-project.org/why-semantic-release-with-commitizen/).
If you don't use Conventional Commits when making a commit, we will
revise the pull request title to follow that format, as we use [squash
merges](https://git-scm.com/docs/git-merge) when merging pull requests,
so all other commits in the pull request will be squashed into one
commit.