Skip to content

Commit 95b1789

Browse files
committed
Docs: Add developer setup section and requirements-dev.txt.
1 parent 0da6ad4 commit 95b1789

File tree

2 files changed

+50
-0
lines changed

2 files changed

+50
-0
lines changed

CONTRIBUTING.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,49 @@ Please use the following guidelines when contributing to this project.
44

55
Before contributing significant changes, please begin a discussion of the desired changes via a GitHub Issue to prevent doing unnecessary or overlapping work.
66

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:
34+
35+
```bash
36+
# Docker Engine (https://docs.docker.com/engine/install/ubuntu/)
37+
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
38+
39+
# Git LFS (https://git-lfs.com/)
40+
sudo apt-get install git-lfs
41+
git lfs install
42+
43+
# 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+
750
## Development Scripts
851

952
The `brev/` directory contains scripts for building, running, and testing tutorial Docker containers locally, as well as validation and CI helper scripts.

brev/requirements-dev.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Developer dependencies for working on Accelerated Computing Hub.
2+
# Install with: uv pip install -r brev/requirements-dev.txt
3+
4+
pre-commit
5+
nbformat
6+
nbconvert
7+
hpccm

0 commit comments

Comments
 (0)