Home

Awesome

hydrus Build Status

hydrus is a set of Python based tools for easier and efficient creation of Hypermedia driven REST-APIs. hydrus utilises the power of Linked Data to create a powerful REST APIs to serve data. hydrus uses the Hydra(W3C) standard for creation and documentation of it's APIs.

Start-up the demo

You should be displaying the example API as served by the server.

Add your own Hydra documentation file

To serve your own Hydra-RDF documentation file:

You should be displaying your API as served by the server.

Table of contents

<a name="features"></a> Features

hydrus supports the following features:

<a name="req"></a> Requirements

The system is built over the following standards and tools:

Apart from this, there are also various Python packages that hydrus uses. Using python setup.py install installs all the required dependencies.

NOTE: You'll need to use python3 not python2. Hydrus does not support python < 3.6

<a name="demo"></a> Demo

To run a demo for hydrus using the sample API, just do the following:

  1. Clone hydrus:
git clone https://github.com/HTTP-APIs/hydrus
cd hydrus
  1. Install a Python virtual environment using:
python3.8 -m venv .venv

or:

virtualenv -p python3.8 .venv
  1. Install hydrus using:
source .venv/bin/activate
pip install -r requirements.txt
python setup.py install

NOTE: there is an alternative way to install dependencies with poetry:

pip3 install poetry
poetry install

This is mostly used to check dependencies conflicts among packages and to release to PyPi.

After installation is successful, to run the server:

hydrus serve

The demo should be up and running on http://localhost:8080/serverapi/.

<a name="usage"></a> Usage

For more info, head to the Usage section of the wiki.

Development

  1. Install git hook: pre-commit install
  2. Every time code is committed, automated checks are run using mypy and pylint