Xpublish#
Useful links: Installation | Source Repository | Issue Tracker | Q&A Support | Slack Channel
Xpublish is#
A community and ecosystem of plugins, servers, and their builders and users
Explore the Xpublish ecosystem.
I want to#
Serve a collection of datasets with pre-configured server
Xpublish lets you easily publish Xarray Datasets via a REST API.#
You can run a short example application in a live session here:
On the server-side, one or more datasets can be published using the
xpublish.Rest
class or the xarray.Dataset.rest
accessor, e.g.,
ds.rest.serve(host="0.0.0.0", port=9000)
Those datasets can be accessed from various kinds of client applications, e.g., from within Python using Zarr and fsspec.
import xarray as xr
import zarr
from fsspec.implementations.http import HTTPFileSystem
fs = HTTPFileSystem()
http_map = fs.get_mapper("http://0.0.0.0:9000/zarr/")
# open as a zarr group
zg = zarr.open_consolidated(http_map, mode="r")
# or open as another Xarray Dataset
ds = xr.open_zarr(http_map, consolidated=True)
Or to explore other access methods, open http://0.0.0.0:9000/docs in a browser.
Feedback#
If you encounter any errors or problems with Xpublish, please open an issue on GitHub, or ask questions in Github Discussions or on our Slack Channel.