Install#
This page puts Ingence on your computer. It takes a few minutes. Ingence is a pre-alpha.
What you need#
A system: macOS, Linux or Windows.
Python 3.12, 3.13 or 3.14. If you use
uv(below), it fetches Python for you.A laptop is enough. Ingence is built for a machine with about 12 GB of memory and four to eight cores. It uses no graphics card.
Pick one of the four ways below. Each is one command with no extras. uv is the quickest.
With uv (recommended)#
uv is a small program that installs other programs. Install it once. On macOS or Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
On Windows, in PowerShell:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
You can also use brew install uv, or pip install uv in any Python environment. Then:
uv tool install ingence
ingence --version
uv downloads a supported Python if you do not have one, and keeps Ingence apart from everything
else on your computer. If the terminal says ingence is not found, run uv tool update-shell and
open a new terminal.
To upgrade, run uv tool upgrade ingence. To remove Ingence, run uv tool uninstall ingence.
With pip, in a virtual environment#
A virtual environment is a folder that holds Ingence and the libraries it needs, apart from
everything else. First check that you have Python 3.12, 3.13 or 3.14 with python3.12 --version
(for 3.13 or 3.14, change the number). If you do not, install it from
python.org, with brew install python@3.12, or from your
system’s packages.
python3.12 -m venv ~/ingence-env
~/ingence-env/bin/python -m pip install ingence
~/ingence-env/bin/ingence --version
To type ingence alone, activate the environment in each new terminal:
source ~/ingence-env/bin/activate. To upgrade, run
~/ingence-env/bin/python -m pip install -U ingence.
py -3.12 -m venv $HOME\ingence-env
& $HOME\ingence-env\Scripts\python -m pip install ingence
& $HOME\ingence-env\Scripts\ingence --version
To type ingence alone, activate the environment in each new terminal:
& $HOME\ingence-env\Scripts\Activate.ps1. To upgrade, run
& $HOME\ingence-env\Scripts\python -m pip install -U ingence.
To remove Ingence, delete the ingence-env folder.
With pipx#
pipx installs a command-line program into an environment of its own, like uv tool. It uses
the Python it was installed with, which must be 3.12, 3.13 or 3.14:
pipx install ingence
ingence --version
If your default Python is another version, add --python and the name of a 3.12, 3.13 or 3.14
interpreter, for example --python python3.12. To upgrade, run pipx upgrade ingence. To remove
Ingence, run pipx uninstall ingence.
With conda#
conda create -n ingence --override-channels -c conda-forge python=3.12 pip
conda activate ingence
python -m pip install ingence
ingence --version
Ingence is not a conda package. pip installs it, and the libraries it needs, into the conda
environment, so keep that environment for Ingence alone. mamba takes the same commands. To
upgrade, activate the environment and run python -m pip install -U ingence. To remove Ingence, run
conda env remove -n ingence.
Check that it worked#
ingence --version
It prints the package version and the version of the record format it writes, for example
ingence 0.3.0 (schema 1.23). The first command you run after installing is slower than the
rest, once, while Python prepares the engine’s files.
Next: Your first project.
Optional parts#
The install above reads text, tables, TIFF images, PDF files and Office files. The Dashboard’s
themes need nothing extra. Optional parts add more: content adds more image formats and
notebooks, and images, detect, parsing, solver and graph add further readers and
analyses. The detect part uses Magika, a small model that runs locally to recognize file formats.
It also installs python-magic, which needs the libmagic library on your system (on macOS,
brew install libmagic; on Ubuntu, sudo apt install libmagic1); without it, the other detectors
still run. A separate package,
fonttools, decodes some fonts embedded in PDF files. Without it, a PDF’s text can come out less
complete, and the reader’s warning is kept in the run’s journal.
To add content and fonttools with uv:
uv tool install --force --with fonttools "ingence[content]"
With pip (in a conda environment, python -m pip once the environment is activated):
~/ingence-env/bin/python -m pip install "ingence[content]" fonttools
From a wheel file#
If you were given a wheel file instead, such as ingence-0.3.0-py3-none-any.whl, put its name where
the commands above say ingence, and run them from the folder that holds it. For example:
uv tool install ingence-0.3.0-py3-none-any.whl
To upgrade, install the newer file in the same way, with --force for uv tool install.
From the source, to change the code#
The source repository is not public yet. Until it is, install from the package index, as above.