h5grove is a Python library providing core utilities to serve HDF5 file contents over a REST API. It allows users to browse and extract data from HDF5 files via HTTP requests, with support for various web frameworks like FastAPI, Flask, and Tornado. The library is actively maintained, with a current version of 4.0.0, and releases new versions regularly, often including breaking changes to improve the API or underlying structure.
pip install h5groveVerified import paths — ran on the pinned version, not inferred.
This quickstart demonstrates setting up a basic h5grove server using FastAPI and Uvicorn. It mounts the h5grove API at the `/h5grove` path. Ensure you have the `h5grove[fastapi]` and `uvicorn` packages installed, and specify an `H5GROVE_HDF5_DIR` environment variable or directly set `H5GroveConfig.hdf5_dir` to point to a directory containing your HDF5 files. This allows the server to discover and serve them.
Update client-side parsing logic for `/meta` endpoint responses involving compound datasets to expect `members` as an array.
Update all API calls to remove trailing slashes from endpoint paths. Old endpoints with trailing slashes will result in 404 Not Found errors.
Ensure your development and deployment environments are using Python 3.10 or a later version. Older Python versions will cause installation or runtime errors.
Adjust client-side code that parses metadata responses to use `kind` instead of `type`, and to handle the new structured `type` object instead of a simple `dtype` string.