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