Plesty Documentation

Quickstart

Prerequisites and first steps for contributing to PLESTY.

Prerequisites

Tool Minimum version Install
Python 3.12 pyenv install 3.12 or system package
uv 0.4 curl -LsSf https://astral.sh/uv/install.sh | sh
git 2.30 System package or git-scm.com
glab any brew install glab or sudo apt install glab

uv manages virtual environments and runs all development commands in PLESTY — you do not need pip, poetry, or conda.

Clone the PLESTY management workspace

If you are a team contributor with GitLab access:

git clone git@gitlab.com:plesty/plesty-management.git
cd plesty-management

Pull a specific module

Use the management workspace to clone hub module repos:

# Pull a specific device module
node scripts/pull/pull.mjs hub/devices/thorlab/plesty-pm100d

# Pull all core repos
node scripts/pull/pull.mjs core

Repos land under repos/ mirroring the GitLab group hierarchy.

Sync the dev environment

Inside any module directory:

uv sync

This creates .venv/ and installs all runtime and dev dependencies (including plesty-sdk and plesty-lib) from the lockfile. No --extra dev flag needed — dev dependencies live in [dependency-groups.dev].

Sections