Medium Python

uv workspaces for monorepos

Rule Description

Use uv workspaces for multi-package Python projects:

```toml
# Root pyproject.toml
[tool.uv.workspace]
members = ["packages/*"]

[tool.uv.sources]
mylib = { workspace = true }
```

Structure:
```
monorepo/
├── pyproject.toml # Workspace root
├── uv.lock # Single lockfile for all packages
└── packages/
├── mylib/
│ ├── pyproject.toml
│ └── src/mylib/
└── myapp/
├── pyproject.toml # depends on mylib
└── src/myapp/
```

Benefits:
- Single lockfile across all packages
- Local package editable installs
- Atomic dependency updates

Included in Rulesets

Django Best Practices
36 rules • 1 standard
View
FastAPI Guidelines
36 rules • 1 standard
View
Python Standards
33 rules • 2 standards
View
uv Standards
25 rules • 2 standards
View
Code Review Standards
58 rules • 0 standards
View

Add This Rule

Sign in to add this rule to your workspace

Sign in with GitHub

Details

Severity
Medium
Category
Python
Used in
5 rulesets