Skip to content

Commit c343d19

Browse files
fedorovclaude
andcommitted
add CLAUDE.md with development instructions
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent f1b192c commit c343d19

1 file changed

Lines changed: 50 additions & 0 deletions

File tree

CLAUDE.md

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
# CLAUDE.md
2+
3+
## Project
4+
5+
pydcmqi — Python API wrapper for dcmqi (DICOM quantitative imaging) CLI tools.
6+
7+
## Development
8+
9+
- Python 3.10+
10+
- Uses `hatchling` + `hatch-vcs` for build/versioning
11+
- Install for development: `.venv/bin/pip install -e ".[test]"`
12+
- Pre-commit hooks configured (ruff, mypy, prettier, codespell, etc.)
13+
14+
## Before committing
15+
16+
Always run pre-commit hooks before committing:
17+
18+
```bash
19+
.venv/bin/pre-commit run --all-files
20+
```
21+
22+
Fix any failures before creating the commit. Do not skip hooks with `--no-verify`.
23+
24+
## Testing
25+
26+
```bash
27+
.venv/bin/pytest tests/
28+
```
29+
30+
Integration tests (TestSegimageRead, TestSegimageWrite) require network access to download DICOM data from IDC.
31+
32+
## Linting
33+
34+
```bash
35+
.venv/bin/pre-commit run --all-files # all hooks including mypy
36+
.venv/bin/ruff check src/ tests/ # ruff only
37+
.venv/bin/mypy src/ tests/ # mypy only
38+
```
39+
40+
## Project structure
41+
42+
```
43+
src/pydcmqi/
44+
├── __init__.py # Public API exports
45+
├── types.py # TypedDicts, Literal types
46+
├── exceptions.py # DcmqiError
47+
├── triplet.py # Triplet class (DICOM code triplet)
48+
├── segment.py # SegmentData, Segment
49+
├── segimage.py # SegImageData, SegImageFiles, SegImage (orchestrator)
50+
```

0 commit comments

Comments
 (0)