Back to list

Hydra: Hypermedia-Driven Web APIs

http://www.markus-lanthaler.com/hydra/

Hydra: Hypermedia-Driven Web APIs

Hydra is an effort to simplify the development of interoperable, hypermedia-driven Web APIs. The two fundamental building blocks of Hydra are JSON‑LD[1] and the Hydra Core Vocabulary[2].

JSON‑LD is the serialization format used in the communication between the server and its clients. The Hydra Core Vocabulary represents the shared vocabulary between them. By specifying a number of concepts which are commonly used in Web APIs it can be used as the foundation to build Web services that share REST's benefits in terms of loose coupling, maintainability, evolvability, and scalability. Furthermore it enables the creation of generic API clients instead of requiring specialized clients for every single API.

Specifications

Playground

There exists a demo Web API featuring a simple event management API which allows you to try Hydra directly in your web browser:

Launch Hydra Console[3]

There also exists a demo featuring an issue tracker[4]. Of course, the complete source code of the Hydra Event API[5] as well as the Hydra Issue Tracker Demo application[6] is available. You can use them as skeletons for your own APIs.

Collaborating

Join the Hydra W3C Community Group[7] (you need a W3C account[8] to do so). If you just want to report a bug, either raise an issue on our issue tracker[9], submit a pull request, or send a mail to Hydra's public mailing list[10].

Source Code

The Hydra project currently consists of the following parts:

Publications/Presentations

References

  1. ^ JSON‑LD (json-ld.org)
  2. ^ Hydra Core Vocabulary (www.markus-lanthaler.com)
  3. ^ Launch Hydra Console (www.markus-lanthaler.com)
  4. ^ demo featuring an issue tracker (www.markus-lanthaler.com)
  5. ^ Hydra Event API (bit.ly)
  6. ^ Hydra Issue Tracker Demo application (m.lanthi.com)
  7. ^ Hydra W3C Community Group (m.lanthi.com)
  8. ^ W3C account (www.w3.org)
  9. ^ issue tracker (github.com)
  10. ^ Hydra's public mailing list (lists.w3.org)
  11. ^ HydraBundle (m.lanthi.com)
  12. ^ Symfony2 (www.symfony.com)
  13. ^ HydraConsole (m.lanthi.com)
  14. ^ HydraClient (m.lanthi.com)
  15. ^ JsonLD (m.lanthi.com)
  16. ^ Full-on Hypermedia APIs with Hydra (m.lanthi.com)
  17. ^ REST: Advanced Research Topics and Practical Applications (m.lanthi.com)
  18. ^ RESTful Web APIs (amzn.to)
  19. ^ Building Next-Generation Web APIs with JSON-LD and Hydra (m.lanthi.com)
  20. ^ slides (m.lanthi.com)
  21. ^ video (bit.ly)
  22. ^ Hydra: A Vocabulary for Hypermedia-Driven Web APIs (m.lanthi.com)
  23. ^ slides (m.lanthi.com)
  24. ^ Creating 3rd Generation Web APIs with Hydra (m.lanthi.com)
  25. ^ slides (m.lanthi.com)
  26. ^ Model Your Application Domain, Not Your JSON Structures (m.lanthi.com)
  27. ^ slides (m.lanthi.com)
Back to list