Skip to main content

ROMI_logo / PlantDB.server

Licence Python Version GitHub branch check runs PyPI - Version

Server-side component of the ROMI plant database system.

Provides a robust REST API server implementation for managing plant phenotyping data.

Features include:

  • File system database management
  • Data synchronization services
  • Command-line tools for database management

Overview

PlantDB is a library for the ROMI (Robotics for Microfarms) plant database ecosystem. It is designed for plant and agricultural research facilities and robotics labs that require lightweight plant data management infrastructure.

It consists of three components:

  1. plantdb.commons: provides a Python API for interacting with plant data
  2. plantdb.server: provides the server-side REST API to interact with plant data
  3. plantdb.client: provides the client-side REST API to interact with plant data

For comprehensive documentation of the PlantImager project, visit: https://docs.romi-project.eu/plant_imager/

API documentation for the plantdb library is available at: https://romi.github.io/plantdb/

Environment Setup

We strongly recommend using isolated environments to install ROMI libraries.

Python venv

To create a new Python virtual environment for PlantDB:

python -m venv .venv         # create a pyvenv named `.venv` in the current directory
source .venv/bin/activate    # activate the virtual environment
pip install ipython          # optional interactive workbench

Conda

This documentation uses conda as both an environment and package manager. If you don't have miniconda3 installed, please refer to the official documentation.

To create a new conda environment for PlantDB:

conda create -n plantdb 'python=3.10' ipython

To use it, you need to activate it with:

conda activate plantdb  # activate your environment

Installation

User - Pre Built Packages

Activate your environment and install the packages using pip:

pip install plantdb.commons plantdb.server plantdb.client

Developers - From Sources

To contribute to the development, you will need to install the sources:

git clone https://github.com/romi/plantdb.git
cd plantdb
# Install 'plantdb.commons'...
pip install -e src/commons/.[io]
# Install 'plantdb.server'...
pip install -e src/server/.
# Install 'plantdb.client'...
pip install -e src/client/

Usage

Test with Toy Dataset

To run the server with a temporary test database in debug mode:

fsdb_rest_api --test --debug

Development

To start the REST API server for a local plant database:

fsdb_rest_api -db /path/to/your/database --host 127.0.0.1 --port 8080

Production

To start the REST API server in production:

uwsgi --http :5000 --module plantdb.server.cli.wsgi:application --callable application --master

For detailed usage instructions and a full endpoint reference, see:

Metadata

Release files for plantdb.server 0.17.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for plantdb.server 0.17.0
File Size Uploaded
plantdb_server-0.17.0.tar.gz 79.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for plantdb.server 0.17.0
File Interpreter ABI Platform
plantdb_server-0.17.0-py3-none-any.whl Python 3 none any Details

Total release size: 183.4 kB

Release files / plantdb_server-0.17.0.tar.gz

Download URL plantdb_server-0.17.0.tar.gz
Size 79.0 kB
Tags Source
SHA-256 checksum
How to use checksums
fef2dac7d9958b0a6be2130ae72f2f5fc0aa88a696034a313a166531253d3ddb
BLAKE2b-256 checksum
How to use checksums
262c1fa1ecd0b1c7b1dd063fef300fd5c631271b71a2fccd5bc812abccafacff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 2, 2026.

Transparency log

Release files / plantdb_server-0.17.0-py3-none-any.whl

Download URL plantdb_server-0.17.0-py3-none-any.whl
Size 104.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
492475a28d4154901be3c0b33120255d002f4be68b57c335913940320e03850d
BLAKE2b-256 checksum
How to use checksums
f5ef69adf84960ae037fba2a4c2e7eada0903f4970bc888ab35a113212d92c96
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 2, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.17.0 This release

2 release files

0.15.1

2 release files

0.14.4

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page