Metadata-Version: 2.1
Name: elabftwcontrol
Version: 0.0.3
Summary: Package for easily interacting with eLabFTW data from the cli and in Python
License: MIT
Keywords: science,lab notebooks,data management
Author: Niels Cautaerts
Author-email: nielscautaerts@hotmail.com
Requires-Python: >=3.10,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Scientific/Engineering
Requires-Dist: elabapi-python (>=0.4.1,<0.5.0)
Requires-Dist: openpyxl (>=3.1.2,<4.0.0)
Requires-Dist: pandas (>=2.0.3,<3.0.0)
Requires-Dist: pydantic (==2.4.2)
Requires-Dist: pyyaml (>=6.0.1,<7.0.0)
Requires-Dist: tabulate (>=0.9.0,<0.10.0)
Requires-Dist: typer (>=0.9.0,<0.10.0)
Requires-Dist: xlsxwriter (>=3.2.0,<4.0.0)
Description-Content-Type: text/markdown

# Elabftwcontrol

Elabftwcontrol is a library and CLI tool for interacting with the popular electronic lab notebook (ELN) software [eLabFTW](https://www.elabftw.net/).
It works by implementing higher level abstractions on top of the basic [api](https://github.com/elabftw/elabapi-python/).
It is a 3rd party tool not officially supported by eLabFTW maintainers.
Elabftwcontrol should not to be confused with [elabctl](https://github.com/elabftw/elabctl), the official tool for managing an eLabFTW installation.

Things elabftwcontrol aims to facilitate:
* downloading data from experiments and items in various (tabular) formats
* uploading or mutating experiments and items
* managing templates, item categories and other eLabFTW resources declaratively with yaml files (partially implemented)

⚠️ Elabftwcontrol is currently a work in progress and the API may be prone to change at any time

## Installation
You can install elabftwcontrol with pip (if you will use it as a library) or pipx (if you will use it via the CLI):

```
$ pip install elabftwcontrol

or

$ pipx install elabftwcontrol
```

## Usage

### CLI
Use the `elabftwctl` command to interact with eLabFTW. Check out the options via `--help`.

### Python
Documentation and examples are a work in progress, at this moment you will have to look through the code.

