Getting Started
This tutorial walks you through installing axm-ingot and verifying your setup.
Prerequisites
- Python 3.12+
- uv (recommended) or pip
Installation
Or with pip:
Step 1: Resolve a workspace
Python
from pathlib import Path
from axm_ingot import resolve_workspace
workspace = resolve_workspace(Path("/path/to/your/uv-workspace"))
if workspace is None:
print("not a uv workspace")
else:
print("root:", workspace.root)
for member in workspace.members:
print(member.name, member.path)
resolve_workspace returns None (never raises) when the directory has no
[tool.uv.workspace] table or an unreadable pyproject.toml.
Step 2: Find the workspace root from anywhere
Python
from pathlib import Path
from axm_ingot import find_workspace_root
root = find_workspace_root(Path.cwd()) # walks up to the workspace root
Step 3: Run the Tests
axm-ingot has no package-local Makefile — run its test suite directly
through uv from the workspace root:
To lint and type-check the whole workspace at once, use the root Makefile
target (run it from the workspace root, not from inside the package):
Next Steps
- API Reference — Full public API documentation
- Architecture — How the project is structured