Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/http-apis/falcon-http-hydra
A porting of hydrus to Falcon framework
https://github.com/http-apis/falcon-http-hydra
Last synced: 12 days ago
JSON representation
A porting of hydrus to Falcon framework
- Host: GitHub
- URL: https://github.com/http-apis/falcon-http-hydra
- Owner: HTTP-APIs
- License: mit
- Created: 2018-02-17T13:55:51.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2019-09-20T12:55:40.000Z (over 5 years ago)
- Last Synced: 2024-10-29T13:35:31.328Z (about 2 months ago)
- Language: Python
- Size: 610 KB
- Stars: 5
- Watchers: 6
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
Hydrus
===================
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](https://en.wikipedia.org/wiki/Linked_data) to create a powerful REST APIs to serve data.
Hydrus uses the [Hydra(W3C)](http://www.hydra-cg.com/) standard for creation and documentation of it's APIs.Table of contents
-------------
* [Features](#features)
* [Requirements](#req)
* [Demo](#demo)
* [Usage](#usage)
Features
-------------
Hydrus supports the following features:
- A generic server that can serve required data and metadata(in the form of API documentation) to a client over HTTP.
- A middleware that allows users to use the client to interact with the server using Natural Language which is processed machine consumable language. **(under development)**
Requirements
-------------
The system is built over the following standards and tools:
- [Falcon](http://falconframework.org/) a Python based micro-framework for handling server requests and responses.
- [JSON-LD](http://json-ld.org/spec/latest/json-ld/) as the preferred data format.
- [Hydra](http://www.hydra-cg.com/) as the API standard.
- [SQLAlchemy](http://www.sqlalchemy.org/) as the backend database connector for storage and related operations.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`.
Demo
-------------
To run a demo for Hydrus using the sample API, just do the following:Clone Hydrus:
```bash
git clone https://github.com/HTTP-APIs/hydrus
```
Change directory and switch to the develop branch:
```bash
cd hydrusgit checkout -b develop origin/develop
```Install hydrus using:
```bash
pip install .
```
or
```bash
python setup.py install
```and run the server using:
```bash
hydrus serve
```The demo should be up and running on `http://localhost:8080/serverapi/`.
Usage
-------------
For more info, head to the [Usage](https://github.com/HTTP-APIs/hydrus/wiki/Usage) section of the [wiki](https://github.com/HTTP-APIs/hydrus/wiki/).