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.16.1

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.16.1
File Size Uploaded
plantdb_server-0.16.1.tar.gz 79.0 kB Details

Built distribution (wheel)

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

Total release size: 183.4 kB

Release files / plantdb_server-0.16.1.tar.gz

Download URL plantdb_server-0.16.1.tar.gz
Size 79.0 kB
Tags Source
SHA-256 checksum
How to use checksums
e2d969fb1bc2baae2a3fba7656d6bdc1895419a32a2f599ae969053536361d4e
BLAKE2b-256 checksum
How to use checksums
32bcf2de3574d7100c74ffec07e30b8aa8302f54efc4c042e444669aa8abfb3e
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 1, 2026.

Transparency log

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

Download URL plantdb_server-0.16.1-py3-none-any.whl
Size 104.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2405484dfe010146e4d63ece1b057c17ec4bc2bc9086af96bfd5b29445116578
BLAKE2b-256 checksum
How to use checksums
6f23723557a8807983579bf0a36d3c8ad4f57d1925669a4f1813f82127904855
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 1, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.16.1 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