Vulcain is a brand new protocol using HTTP/2 Server Push to create fast and idiomatic client-driven REST APIs. An open-source gateway server that you can put on top of any existing web API to instantly turn it into a Vulcain-compatible one is also provided! It supports hypermedia APIs but also any "legacy" API by documenting its relations using OpenAPI. The protocol has been published as an Internet-Draft that is maintained in this repository. A reference, production-grade, implementation gateway server is also available in this repository. It's free software (AGPL) written in Go. A Docker image is provided. Current solutions for these problems (GraphQL, JSON:API's embedded resources and sparse fieldsets, etc.) are smart network hacks for HTTP/1. But these hacks come with (too) many drawbacks when it comes to HTTP cache, logs and even security. Fortunately, thanks to the new features introduced in HTTP/2, it's now possible to create true REST APIs fixing these problems with ease.

Features

  • The Fields HTTP header allows the client to ask the server to return only the specified fields of the requested resource
  • Alternatively to HTTP headers, the preload query parameter can be used
  • Multiple Fields HTTP headers can be passed
  • Alternatively to HTTP headers, the fields query parameter can be used to filter resources
  • Map a non-hypermedia API using OpenAPI
  • Caddy web server module

Project Samples

Project Activity

See All Activity >

License

GNU Free Documentation License

Follow Vulcain

Vulcain Web Site

Other Useful Business Software
The Most Powerful Software Platform for EHSQ and ESG Management Icon
The Most Powerful Software Platform for EHSQ and ESG Management

Addresses the needs of small businesses and large global organizations with thousands of users in multiple locations.

Choose from a complete set of software solutions across EHSQ that address all aspects of top performing Environmental, Health and Safety, and Quality management programs.
Learn More
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Vulcain!

Additional Project Details

Programming Language

Go

Related Categories

Go Software Development Software, Go Reverse Proxy Server

Registered

2022-03-15