You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
*`python.yaml`: File configuring Github action that runs tools and tests
9
+
*`.devcontainer`: Directory housing the configuration files for initializing a devcontainer.
10
+
*`devcontainer.json`: File that configures the devcontainer, containing settings for VS Code.
11
+
*`.github`: Directory dedicated to GitHub-specific files and configurations.
12
+
*`actions`: Directory containing custom GitHub Actions scripts or reusable workflows for automation within the repository.
13
+
*`workflows`: Directory housing configuration files for GitHub Actions.
14
+
*`python.yaml`: File that configures the GitHub Action responsible for executing tools and running tests.
14
15
*`tests`: Folder containing Python tests
15
-
*`main_test.py`: File with pytest-style tests of main.py
16
-
*`.gitignore`: File describing what file patterns Git should never track
17
-
*`.pre-commit-config.yaml`: File listing all the pre-commit hooks and args
18
-
*`main.py`: The main (and currently only) Python file for the program
19
-
*`pyproject.toml`: File configuring most of the Python dev tools
20
-
*`README.md`: You're reading it!
21
-
*`requirements-dev.txt`: File listing all PyPi packages required for development
22
-
*`requirements.txt`: File listing all PyPi packages required for production
23
-
*`.github`: Folder for workflows, templates and etc.
24
-
*`dependabot.yml`:
25
-
*`workfows.yml`:
26
-
*`actions`:
27
-
*`CODEOWNERS`:
28
-
*`LICENSE`:
16
+
*`main_test.py`: File containing pytest-style test cases for `main.py`.
17
+
*`.gitignore`: File specifying file patterns that Git should ignore and never track.
18
+
*`.pre-commit-config.yaml`: File enumerating all pre-commit hooks and their associated arguments.
19
+
*`main.py`: The primary (and currently sole) Python file for the program.
20
+
*`pyproject.toml`: File that configures the majority of Python development tools.
21
+
*`README.md`: This is it.
22
+
*`requirements-dev.txt`: File containing a list of all PyPI packages required for development.
23
+
*`requirements.txt`: File containing a list of all PyPI packages required for production.
24
+
*`CODEOWNERS`: File specifying individuals or teams responsible for maintaining specific parts of the codebase, used for automatic review requests in pull requests.
25
+
*`LICENSE`: File outlining the legal terms and conditions under which the software is distributed and used.
29
26
30
27
## Setup Instructions
31
28
@@ -88,13 +85,13 @@ If your repository is private with no GitHub Advanced Security license, remove t
88
85
*`ruff`: identifies many errors and style issues (`flake8`, `isort`, `pyupgrade`)
89
86
*`black`: auto-formats code
90
87
91
-
Those checks are run as pre-commit hooks using the `pre-commit` library.
88
+
Those checks are executed as `pre-commit` hooks using the pre-commit library.
92
89
93
-
It includes `pytest` for testing plus the `pytest-cov` plugin to measure coverage.
90
+
The setup includes `pytest` for running tests, along with the `pytest-cov` plugin to measure code coverage.
94
91
95
-
The checks and tests are all run using Github actions on every pull request and merge to main.
92
+
All checks and tests are automatically run via GitHub Actions on every pull request and merge into the main branch.
96
93
97
-
This repository is setup for Python 3.11. To change the version:
94
+
This repository is configured for Python 3.11. To switch to a different Python version:
98
95
99
96
1. Change the `image` argument in `.devcontainer/devcontainer.json` (see [https://github.com/devcontainers/images/tree/main/src/python](https://github.com/devcontainers/images/tree/main/src/python#configuration) for a list of pre-built Docker images)
100
97
1. Change the config options in `.precommit-config.yaml`
@@ -103,13 +100,13 @@ This repository is setup for Python 3.11. To change the version:
103
100
104
101
### With devcontainer
105
102
106
-
This repository comes with a devcontainer (a Dockerized Python environment). If you open it in Codespaces, it should automatically initialize the devcontainer.
103
+
This repository includes a devcontainer, which is a Dockerized Python environment. If you open the repository in GitHub Codespaces, the devcontainer will initialize automatically.
107
104
108
-
Locally, you can open it in VS Code with the Dev Containers extension installed.
105
+
For local development, you can open it in VS Code with the Dev Containers extension installed to set up the environment.
109
106
110
107
### Without devcontainer
111
108
112
-
If you can't or don't want to use the devcontainer, then you should first create a virtual environment:
109
+
If you are unable or prefer not to use the devcontainer, the first step is to create a virtual environment:
113
110
114
111
```
115
112
python3 -m venv .venv
@@ -125,8 +122,7 @@ pre-commit install
125
122
126
123
### Adding code and tests
127
124
128
-
This repository starts with a very simple `main.py` and a test for it at `tests/main_test.py`.
129
-
You'll want to replace that with your own code, and you'll probably want to add additional files as your code grows in complexity.
125
+
This repository begins with a basic `main.py` file and its corresponding test file located at `tests/main_test.py`. You should replace these with your own code, and as your project evolves, you’ll likely need to add more files to accommodate increasing complexity.
0 commit comments