Hydra simplifies the development of interoperable, hypermedia-driven Web APIs
Building Web APIs seems still more an art than a science. How can we build APIs such that generic clients can easily use them? And how do we build those clients? Current APIs heavily rely on out-of-band information such as human-readable documentation and API-specific SDKs. However, this only allows for very simple and brittle clients that are hardcoded against specific APIs. Hydra, in contrast, is a set of technologies that allow to design APIs in a different manner, in a way that enables smarter clients.
Hydra Core Vocabulary
Essential building blocks for machine-accessible Hypermedia APIs
There also exists a demo Web API featuring a simple issue tracker which allows you to play with Hydra directly in your web browser.
Linked Data Fragments
API and client designs to publish and query Linked Data at Web-scale
Get familiar with Linked Data Fragments or read the triple pattern fragments specification
Various LDF data sources are already available. Query them.
Join the Working Group
Wanna help? Then join the Hydra W3C Community Group. Here's how:
- Get a free W3C account (it may take a while to get approved).
- Join the Hydra W3C Community Group.
- Bonus points: Send an email to introduce yourself to the group.
Tools/Libraries/Applications
- HydraConsole: a generic API console for Hydra-powered Web APIs
- HydraBundle: a bundle for Symfony2 to create Web APIs based on Hydra (demo application)
- API Platform: a PHP framework to build Web APIs with JSON-LD, Schema.org and Hydra
- hydra-java: annotate your Java beans and serialize them as JSON-LD with Hydra
- URSA: a framework written in C# to create Hydra-powered Web APIs
- hydrus: a set of Python based tools to create Hydra-powered Web APIs
- Levanzo: Clojure library to build hypermedia driven RESTful APIs
- Argolis: Hydra hypermedia controls for .NET web applications written in Nancy
- hydra-core: a JavaScript library to work with Hydra-enabled Web APIs
- SmallHydra: a small Hydra library for the ESP8266 and Arduino platform
- hydra-py: a Hydra library for Python (including a Triple Patterns Fragments client)
- Alcaeus: a Hydra client library written in TypeScript
- HydraClient: a PHP client library to access Hydra-powered Web APIs
- api-doc-parser: a JavaScript library to parse Hydra API documentations
- JsonLD: a JSON-LD processor implemented in PHP
- Linked Data Fragments Server: serve triple pattern fragments (JavaScript, Java, NetKernel)
- Linked Data Fragments Client: query a Linked Data Fragments API (JavaScript, browser, Java)
Publications/Presentations
- M. Lanthaler, “The Web Is Changing — From Strings to Things,” presented at the O'Reilly Open Source Conference 2014 (OSCON) in Portland [video].
- M. Lanthaler, “Why and How to Optimize Your Data Architecture for an Integrated Future,” presented at Presented at APIcon UK 2014 in London, England. [video].
- T. Hoppe, “REST APIs Today and Tomorrow - an Essay,” presented at several Meetups.
- M. Lanthaler, “Creating Awesome Web APIs is a Breeze,” presented at the O'Reilly Open Source Conference 2014 (OSCON) in Portland [video].
- T. Pluskiewicz, “JSON-LD and Hydra - Hypermedia API alternatively,” presented at Meet.js Wrocław 2014.
- M. Lanthaler, “A Deep Dive into JSON-LD and Hydra,” presented at APIcon San Francisco 2014.
- M. Lanthaler, “Stop Reinventing the Wheel! Use Linked Data to Build Better APIs,” presented at APIcon San Francisco 2014.
- M. Lanthaler, “The Web 3.0 is just around the corner. Be prepared!,” presented at APIdays Berlin, 2014.
- R. Verborgh, “The Lonesome LOD Cloud,” presented at the 4th USEWOD Workshop on Usage Analysis and the Web of Data, 2014.
- R. Verborgh, M. Vander Sande, P. Colpaert, S. Coppens, E. Mannens, and R. Van de Walle, “Web-Scale Querying through Linked Data Fragments,” in Proceedings of the 7th Workshop on Linked Data on the Web (LDOW2014) at the 23nd International World Wide Web Conference (WWW2014), 2014 [slides].
- M. Lanthaler, “Full-on Hypermedia APIs with Hydra,” presented at the API Strategy & Practice Conference, 2014 [video].
- R. Verborgh, “Hypermedia cannot be the engine,” presented at the API Strategy & Practice Conference, 2014.
- C. Pautasso, E. Wilde, and R. Alarcon (editors), “REST: Advanced Research Topics and Practical Applications,” Springer New York, 2014.
- L. Richardson, M. Amundsen, and S. Ruby, “RESTful Web APIs,” O’Reilly Media, 2013.
- M. Lanthaler, “Building Next-Generation Web APIs with JSON-LD and Hydra,” presented at Symfony Live Portland 2013 [slides] [video].
- M. Lanthaler and C. Gütl, “Hydra: A Vocabulary for Hypermedia-Driven Web APIs,” in Proceedings of the 6th Workshop on Linked Data on the Web (LDOW2013) at the 22nd International World Wide Web Conference (WWW2013), 2013 [slides].
- M. Lanthaler, “Creating 3rd Generation Web APIs with Hydra,” in Proceedings of the 22nd International World Wide Web Conference (WWW2013), 2013, pp. 35–37 [slides].
- M. Lanthaler and C. Gütl, “Model Your Application Domain, Not Your JSON Structures,” in Proceedings of the 4th International Workshop on RESTful Design (WS-REST 2013) at the 22nd International World Wide Web Conference (WWW2013), 2013, pp. 1415–1420 [slides].