Skip to main content

Project and package manager for Arx workspaces

Project description

arxpm

arxpm is the Arx project manager and workspace tool.

arx provides the shared .arxproject.toml loading, parsing, and validation API. arxpm owns manifest rendering, workspace lifecycle, Python environment provisioning (via uv), and user-facing workflow commands.

Compatibility

  • Python 3.10+ is supported.
  • On Python 3.10, arxpm uses tomli as a compatibility fallback for tomllib.

Architecture

  • models.py: typed manifest models.
  • manifest.py: .arxproject.toml parsing and rendering.
  • _toml.py: TOML parser compatibility shim (tomllib/tomli).
  • environment.py: backend-neutral environment protocol plus venv, conda, and system implementations that install packages via uv pip install --python <interp>.
  • project.py: project workflows (init, add, install, build, run, pack, publish).
  • healthcheck.py: health checks for environment and manifest.
  • cli.py: Typer command layer.

Commands (v0)

  • arxpm init
  • arxpm install
  • arxpm add <name> [--path PATH|--git URL]
  • arxpm build
  • arxpm compile
  • arxpm run
  • arxpm pack
  • arxpm publish
  • arxpm healthcheck

Development

mamba env create --file conda/dev.yaml
conda activate arxpm
poetry install --with dev
pytest

The examples/ directory ships several sample projects:

  • examples/hello-arx/ — minimal single-file project.
  • examples/multi-module/ — multi-file project whose main.x imports and calls functions from sibling .x modules. See the Multi-file Projects guide.
  • examples/local_lib/ + examples/local-consumer/ — a library and a consumer that live side by side on disk so the consumer resolves imports against the library's .x files. See Local Packages for the supported layout and the current boundary around installed libraries.

Integration tests that compile and execute the examples live in tests/test_examples_integration.py and are gated on arx and uv being on PATH. Run them with:

pytest -m integration

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

arxpm-1.6.0.tar.gz (21.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

arxpm-1.6.0-py3-none-any.whl (24.9 kB view details)

Uploaded Python 3

File details

Details for the file arxpm-1.6.0.tar.gz.

File metadata

  • Download URL: arxpm-1.6.0.tar.gz
  • Upload date:
  • Size: 21.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.4 CPython/3.10.20 Linux/6.17.0-1010-azure

File hashes

Hashes for arxpm-1.6.0.tar.gz
Algorithm Hash digest
SHA256 d15d10b4185a5a6c26543f5e1f5773729af2604657ad801134c684266960f07b
MD5 f7b8919b5237d6189d6def5cef6d0bf6
BLAKE2b-256 018c8bad48b35e3efd63b49b323c2c1df88eb46664f29c609a2cba175e196443

See more details on using hashes here.

File details

Details for the file arxpm-1.6.0-py3-none-any.whl.

File metadata

  • Download URL: arxpm-1.6.0-py3-none-any.whl
  • Upload date:
  • Size: 24.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.4 CPython/3.10.20 Linux/6.17.0-1010-azure

File hashes

Hashes for arxpm-1.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2e2e45ce997a034c1a0777661a56e6540c15de01cd005541426b694c794fdf7d
MD5 2ca76a52dfb47fd81382d9aacf71db4e
BLAKE2b-256 d9c270f8f4cf44cf192b54773b1ed114e5e20f26d5677c672a5aceaea4980366

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page