Metadata-Version: 2.4
Name: plantdb.server
Version: 0.14.4
Summary: Server-side component of the ROMI (Robotics for Microfarms) plant database system.
Author-email: Peter Hanappe <peter.hanappe@sony.com>, Timothée Wintz <timothee@timwin.fr>, Nabil Ait Taleb <mohamednabil.aittaleb@sony.com>, Arthur Luciani <arthur.luciani@ens-lyon.fr>
Maintainer-email: Jonathan Legrand <jonathan.legrand@ens-lyon.fr>
License-Expression: GPL-3.0-or-later
Project-URL: Homepage, https://romi-project.eu/
Project-URL: Documentation, https://docs.romi-project.eu/plant_imager/
Project-URL: Repository, https://github.com/romi/plantdb
Project-URL: Issues, https://github.com/romi/plantdb/issues
Keywords: Robotics for Microfarms,ROMI,Plant Phenotyping,Scientific Database,Data Management,REST API
Classifier: Programming Language :: Python :: 3
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Database
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI :: Server
Classifier: Topic :: System :: Networking
Classifier: Framework :: Flask
Classifier: Operating System :: OS Independent
Classifier: Natural Language :: English
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: plantdb
Requires-Dist: bcrypt
Requires-Dist: flask
Requires-Dist: flask-cors
Requires-Dist: flask-restful
Requires-Dist: requests
Requires-Dist: toml
Provides-Extra: doc
Requires-Dist: mkdocs; extra == "doc"
Requires-Dist: mkdocs-material; extra == "doc"
Requires-Dist: mkdocstrings[python]; extra == "doc"
Requires-Dist: pymdown-extensions; extra == "doc"
Requires-Dist: markdown-exec[ansi]; extra == "doc"
Requires-Dist: mkdocs-gen-files; extra == "doc"
Requires-Dist: mkdocs-literate-nav; extra == "doc"
Requires-Dist: mkdocs-section-index; extra == "doc"
Provides-Extra: test
Requires-Dist: nose2[coverage]; extra == "test"
Requires-Dist: coverage[toml]; extra == "test"
Requires-Dist: networkx; extra == "test"
Requires-Dist: tifffile; extra == "test"

# PlantDB

[![Licence](https://img.shields.io/badge/license-LGPL3-black)](https://www.gnu.org/licenses/lgpl-3.0.en.html)
[![PyPI - Version](https://img.shields.io/pypi/v/plantdb.server?logo=pypi&logoColor=white)](https://pypi.org/project/plantdb.server/)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/plantdb.server?logo=python&logoColor=white)](https://pypi.org/project/plantdb.server/)

Server-side component of the ROMI (Robotics for Microfarms) 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 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/](https://docs.romi-project.eu/plant_imager/)

API documentation for the `plantdb` library is available at: [https://romi.github.io/plantdb/](https://romi.github.io/plantdb/)

## Environment Setup

We strongly recommend using isolated environments to install ROMI libraries.

This documentation uses `conda` as both an environment and package manager.
If you don't have`miniconda3` installed, please refer to the [official documentation](https://docs.conda.io/en/latest/miniconda.html).

To create a new conda environment for PlantDB:
``` shell
conda create -n plantdb 'python=3.10' ipython
```

## Installation

Activate your environment and install the packages using `pip`:

``` shell
conda activate plantdb  # activate your environment first!
pip install plantdb.commons plantdb.server plantdb.client
```
