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
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+43Lines changed: 43 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,49 @@ Please use the following guidelines when contributing to this project.
4
4
5
5
Before contributing significant changes, please begin a discussion of the desired changes via a GitHub Issue to prevent doing unnecessary or overlapping work.
6
6
7
+
## Developer Setup
8
+
9
+
After cloning the repository, set up your local development environment:
10
+
11
+
```bash
12
+
# Create and activate a virtual environment
13
+
uv venv .venv
14
+
source .venv/bin/activate
15
+
16
+
# Install developer dependencies
17
+
uv pip install -r brev/requirements-dev.txt
18
+
19
+
# Install pre-commit hooks
20
+
pre-commit install
21
+
pre-commit install --hook-type pre-push
22
+
```
23
+
24
+
The developer dependencies in `brev/requirements-dev.txt` include:
25
+
26
+
| Package | Used by |
27
+
|---|---|
28
+
|`pre-commit`| Git pre-commit and pre-push hooks. |
29
+
|`nbformat`|`brev/test-notebook-format.py` for canonical notebook validation. |
30
+
|`nbconvert`|`brev/test-links.bash` for converting notebooks to markdown before link checking. |
31
+
|`hpccm`|`brev/dev-build.bash` for generating Dockerfiles from HPCCM recipes (only needed for tutorials that use HPCCM). |
32
+
33
+
You will also need the following non-Python tools. On Ubuntu/Debian:
# Rust toolchain, needed to install lychee (https://rustup.rs/)
44
+
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
45
+
46
+
# lychee link checker (https://lychee.cli.rs/installation)
47
+
cargo install lychee
48
+
```
49
+
7
50
## Development Scripts
8
51
9
52
The `brev/` directory contains scripts for building, running, and testing tutorial Docker containers locally, as well as validation and CI helper scripts.
0 commit comments