Zenodo user documentation uses Lektor, a powerful static content management system.
Dependencies are managed with uv. They are
declared in pyproject.toml and pinned in uv.lock.
-
Install
uv(see other installation methods):$ curl -LsSf https://astral.sh/uv/install.sh | sh -
From the root of the repository, create the virtual environment and install the pinned dependencies:
$ uv sync
uv reads .python-version and downloads the right Python for you, so there
is nothing else to set up.
$ uv run lektor serverThen open http://localhost:5000/ in your browser.
Prefix any command with uv run to execute it inside the project environment.
Alternatively, activate the environment once with source .venv/bin/activate
and drop the prefix.
$ uv run ./runtests.shThe search index needs a few extra packages, grouped under search in
pyproject.toml. Install them and build the index:
$ uv sync --group search
$ uv run lektor build
$ uv run python pagefind_index.py "$(uv run lektor project-info --output-path)"
$ uv run python -m http.server --directory "$(uv run lektor project-info --output-path)"Note that plain uv sync and uv run remove the search packages again. Pass
--group search to keep them installed.
As an alternative to the command line, download and install the desktop
application from Lektor's website.
Launch it, then browse to zenodo-docs-user.lektorproject in the root folder of
the repository and open the file.