Skip to content

Commit 68af4af

Browse files
lwjohnst86signekbpre-commit-ci[bot]
authored
refactor: 🚚 moved file explanation into CONTRIBUTING, not README (#289)
# Description This better belongs in the contributing guide, not the README. Needs a quick review. ## Checklist - [x] Ran `just run-all` --------- Co-authored-by: Signe Kirk Brødbæk <40836345+signekb@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
1 parent 9a7ab30 commit 68af4af

2 files changed

Lines changed: 93 additions & 60 deletions

File tree

template/CONTRIBUTING.md.jinja

Lines changed: 62 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ so is at various states of completion.
1919
To contribute to `{{ github_repo }}`, you first need to install
2020
[uv](https://docs.astral.sh/uv/) and
2121
[justfile](https://just.systems/man/en/packages.html). We use uv and
22-
justfile to manage our project, such as to run checks and test the
22+
justfile to manage our package, such as to run checks and test the
2323
template. Both the uv and justfile websites have a more detailed guide
2424
on using uv, but below are some simple instructions to get you started.
2525

@@ -40,7 +40,7 @@ just
4040
```
4141

4242
As you contribute, make sure your changes will pass our tests by opening
43-
a terminal so that the working directory is the root of this project's
43+
a terminal so that the working directory is the root of this package's
4444
repository and running:
4545

4646
``` bash
@@ -53,7 +53,65 @@ as Git messages. Using this convention allows us to be able to
5353
automatically create a release based on the commit message by using
5454
[Cocogitto](https://decisions.seedcase-project.org/why-semantic-release-with-cocogitto/).
5555
If you don't use Conventional Commits when making a commit, we will
56-
revise the pull request title to follow that format, as we use [squash
57-
merges](https://git-scm.com/docs/git-merge) when merging pull requests,
56+
revise the pull request title to follow that format, as we use squash
57+
merges when merging pull requests,
5858
so all other commits in the pull request will be squashed into one
5959
commit.
60+
61+
## :file_folder: Explanation of files and folders
62+
63+
64+
- `.github/`: Contains GitHub-specific files, such as issue and pull
65+
request templates, workflows,
66+
[dependabot](https://docs.github.com/en/code-security/tutorials/secure-your-dependencies/dependabot-quickstart-guide)
67+
configuration, pull request templates, and a
68+
[CODEOWNERS](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners)
69+
file.
70+
- `tools/vulture-allowlist.py`: List of variables that shouldn't be
71+
flagged by [Vulture](https://github.com/jendrikseipp/vulture) as
72+
unused.
73+
- `tools/get-contributors.sh`: Script to get list of package
74+
contributors.
75+
- `tests/`: Test files for the package.
76+
- `src/`: Source code for the package.
77+
- `docs/`: Documentation about using and developing the Python package.
78+
- `.config/`: Contains configuration files for various tools used in the package,
79+
such as:
80+
- `quartodoc.py`: Custom
81+
[`quartodoc`](https://machow.github.io/quartodoc/) renderer.
82+
- `mypy.ini`: [`mypy`](https://mypy.readthedocs.io/en/stable/)
83+
configuration file for type checking Python code.
84+
- `ruff.toml`: [Ruff](https://docs.astral.sh/ruff/) configuration file
85+
for linting and formatting Python code.
86+
- `rumdl.toml`: [rumdl](https://rumdl.dev/) configuration file for
87+
formatting Markdown files so that they are standardized and consistent
88+
{%- if for_seedcase %}
89+
- `cog.toml`: [Cocogitto](https://docs.cocogitto.io) configuration file
90+
for managing versions.
91+
- `cliff.toml`: [git-cliff](https://git-cliff.org) configuration file for
92+
creating the changelog.
93+
{%- endif %}
94+
- `.copier-answers.yml`: Contains the answers you gave when copying the
95+
package from the template.
96+
**You should not modify this file directly.**
97+
- `.pre-commit-config.yaml`: [Pre-commit](https://pre-commit.com/)
98+
configuration file for managing and running checks before each commit.
99+
- `.typos.toml`: [typos](https://github.com/crate-ci/typos) spell
100+
checker configuration file.
101+
- `justfile`: [`just`](https://just.systems/man/en/) configuration file
102+
for scripting package tasks.
103+
- `.editorconfig`: Editor configuration file for
104+
[EditorConfig](https://editorconfig.org/) to maintain consistent
105+
coding styles across different editors and IDEs.
106+
- `CHANGELOG.md`: Changelog file for tracking changes in the package.
107+
- `CITATION.cff`: Structured citation metadata for your package.
108+
- `CONTRIBUTING.md`: Guidelines for contributing to the package.
109+
- `_metadata.yml`: Quarto metadata file for the website, including
110+
information about the package, such as the titles and GitHub names.
111+
- `_quarto.yml`: Quarto configuration file for the website, including
112+
settings for the website, such as the theme, navigation, and other
113+
options.
114+
- `pyproject.toml`: Main Python package configuration file defining
115+
metadata and dependencies.
116+
- `uv.lock`: Lockfile used by [`uv`](https://docs.astral.sh/uv/) to
117+
record exact versions of installed dependencies.

template/README.qmd

Lines changed: 31 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,74 +1,28 @@
11
---
22
format: gfm
3+
execute:
4+
echo: false
35
metadata-files:
46
- _metadata.yml
57
---
68

7-
# {{< meta gh.repo >}}: TODO add more to title
9+
# {{< meta gh.repo >}}: {{< meta tagline >}}
810

911
{{< include /docs/includes/_badges.qmd >}}
1012

11-
<!-- TODO: Add description of project -->
13+
<!-- TODO: Add description of package -->
14+
15+
Check out our [website]({{< meta links.site >}}) for more information,
16+
such as the features it provides and a
17+
[guide]({{< meta links.site >}}/docs/guide) to using the package. For a
18+
list of changes, see our [changelog](CHANGELOG.md).
1219

1320
::: callout-tip
1421
This Python package was generated from the
15-
[`template-python-package`](https://github.com/seedcase-project/template-python-package)
22+
[Template Python Package](https://github.com/seedcase-project/template-python-package)
1623
Seedcase template :tada:
1724
:::
1825

19-
## Project files and folders
20-
21-
- `.github/`: Contains GitHub-specific files, such as issue and pull
22-
request templates, workflows,
23-
[dependabot](https://docs.github.com/en/code-security/tutorials/secure-your-dependencies/dependabot-quickstart-guide)
24-
configuration, pull request templates, and a
25-
[CODEOWNERS](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners)
26-
file.
27-
- `tools/vulture-allowlist.py`: List of variables that shouldn't be
28-
flagged by [Vulture](https://github.com/jendrikseipp/vulture) as
29-
unused.
30-
- `tools/get-contributors.sh`: Script to get list of project
31-
contributors.
32-
- `tests/`: Test files for the package.
33-
- `src/`: Source code for the package.
34-
- `docs/`: Documentation about using and developing the Python package.
35-
- `_renderer.py`: Custom
36-
[`quartodoc`](https://machow.github.io/quartodoc/) renderer.
37-
- `pytest.ini`: Pytest configuration file.
38-
- `mypy.ini`: [`mypy`](https://mypy.readthedocs.io/en/stable/)
39-
configuration file for type checking Python code.
40-
- `.copier-answers.yml`: Contains the answers you gave when copying the
41-
project from the template.
42-
**You should not modify this file directly.**
43-
- `.config/cog.toml`:
44-
[Cocogitto](https://docs.cocogitto.io) configuration file for managing
45-
versions and changelogs.
46-
- `.pre-commit-config.yaml`: [Pre-commit](https://pre-commit.com/)
47-
configuration file for managing and running checks before each commit.
48-
- `.typos.toml`: [typos](https://github.com/crate-ci/typos) spell
49-
checker configuration file.
50-
- `justfile`: [`just`](https://just.systems/man/en/) configuration file
51-
for scripting project tasks.
52-
- `.editorconfig`: Editor configuration file for
53-
[EditorConfig](https://editorconfig.org/) to maintain consistent
54-
coding styles across different editors and IDEs.
55-
- `CHANGELOG.md`: Changelog file for tracking changes in the project.
56-
- `CITATION.cff`: Structured citation metadata for your project.
57-
- `CONTRIBUTING.md`: Guidelines for contributing to the project.
58-
- `_metadata.yml`: Quarto metadata file for the website, including
59-
information about the project, such as the titles and GitHub names.
60-
- `pyproject.toml`: Main Python project configuration file defining
61-
metadata and dependencies.
62-
- `_quarto.yml`: Quarto configuration file for the website, including
63-
settings for the website, such as the theme, navigation, and other
64-
options.
65-
- `ruff.toml`: [Ruff](https://docs.astral.sh/ruff/) configuration file
66-
for linting and formatting Python code.
67-
- `uv.lock`: Lockfile used by [`uv`](https://docs.astral.sh/uv/) to
68-
record exact versions of installed dependencies.
69-
- `.rumdl.toml`: [rumdl](https://rumdl.dev/) configuration file for
70-
formatting Markdown files so that they are standardized and consistent
71-
7226
## Contributing
7327

7428
Check out our [contributing document](CONTRIBUTING.md) for information
@@ -79,10 +33,31 @@ Please note that this project is released with a
7933
[Contributor Code of Conduct](CODE_OF_CONDUCT.md). By participating in
8034
this project you agree to abide by its terms.
8135

36+
::: content-hidden
37+
### Contributors
38+
39+
{{< include /docs/includes/_contributors.qmd >}}
40+
:::
41+
8242
## Licensing
8343

8444
This project is licensed under the [MIT License](LICENSE.md).
8545

8646
## Changelog
8747

8848
For a list of changes, see our [changelog](CHANGELOG.md) page.
49+
50+
## Citing
51+
52+
If you use this package in your work, please cite it as follows:
53+
54+
```{python}
55+
#| output: asis
56+
!uvx --quiet cffconvert --format apalike
57+
```
58+
59+
Or as a BibTeX entry:
60+
61+
```{python}
62+
!uvx --quiet cffconvert --format bibtex
63+
```

0 commit comments

Comments
 (0)