PLESTY is a scientific automation platform that connects lab hardware to data-processing pipelines through a three-tier architecture. Everything in the platform — devices, analyzers, experiments — follows a shared governance standard enforced by plesty check.
Device
Python API wrapping a single lab instrument. Runs as a TCP/IP server so other modules can connect remotely.
→
Analyzer
A schema-declared transform: it declares its inputs and outputs, implements
analyze(), and stamps every result with its own provenance.→
Experiment
Orchestrates multiple devices and analyzers into a full measurement workflow.
Module types
| Type | Base package | Color | Role |
|---|---|---|---|
| device | plesty-lib |
violet | Single instrument API |
| analyzer | plesty-lib |
amber | Data processing layer |
| experiment | plesty-lib |
mint | Measurement orchestrator |
| core | — | blue | SDK, Lib, CI infrastructure |
Core repos
| Repo | Version | Role |
|---|---|---|
plesty-sdk |
v0.3.5 | CLI: plesty init, check, docs, license, manual, update |
plesty-lib |
v0.3.5 | Runtime: base classes, traffic managers, TCP service, experiments, monitors |
plesty-bench |
v0.2.6 | The bench application and its remote client |
plesty-ci |
— | GitLab CI templates |
Where to start
🏗
Architecture
Modules, TCP, the bench, runs & data, live views
⚡
Quickstart
Six lessons: build a working bench on your own PC, no hardware
🔌
Build a Device
Scaffold, implement, test, expose as TCP server
🔬
Build an Experiment
Experiment class, plans & steps, runs & resume, testing
🛡
Quality Gates
The 14 numbered gates and the seven lettered ones, tier by tier
🔄
Workflow
Branch discipline, CI pipeline, publishing releases