Ergonomic in-memory transformations operations , using NGFF for read/write
Please refer to the documentation, in particular, the API documentation.
You need to have Python 3.12 or newer installed on your system. If you don't have Python installed, we recommend installing uv.
There are several alternative options to install transfo:
- Install the latest development version:
pip install git+https://github.com/Spatial-Innovation-Team/transfo.git@mainSee the changelog.
For questions and help requests, you can reach out in the scverse discourse. If you found a bug, please use the issue tracker.
This project uses Hatch for managing development environment, for building and for
testing. The development environment is configured to use
.venv as the virtual environment directory and includes both dev and test dependency groups.
To set up your development environment, run the following at repo root:
hatch run create-init-dev-envThis command will:
- If no environment exists: Create a virtual environment in
.venv, install the package in development mode, install all development and test dependencies - Install or update pre-commit hooks
Once your environment is set up, you can use the following commands:
Testing:
# Run tests
hatch run dev:test
# Run tests with coverage
hatch run dev:test-covLinting and Formatting:
# Run pre-commit on staged files
hatch run dev:lint-format-staged
# Run pre-commit on all files
hatch run dev:lint-format-all-files
# Install pre-commit hooks manually (if needed)
hatch run dev:pre-commit-installEntering the Environment:
# Activate the virtual environment
hatch shell devThe development environment is created in the .venv directory at the project root. This location is specified in the
[tool.hatch.envs.dev] configuration in pyproject.toml.
The development environment includes two dependency groups:
dev: Development tools including pre-commit, prek, twine, and tytest: Testing tools including pytest, coverage, and pytest-cov
t.b.a