When we revived HTTP Decision Diagram in 2013, the best way to draw this was Omnigraffle.
Then we moved over to Cosmogol/JSON and SVG versions.
A decade later, there's XState and XState can serve not only for visualization but also for implementation.
Not many know that HTTP Decision Diagram is part of a higher goal of automating the entire request-response flow, from automatic parsing of headers strictly based on their ABNF grammars, via the decision diagram, and down to the core logic of content negotiation and caching and handling conditionals etc. A decade ago, that has been implemented as a proof of concept via Machina (FSM), but why not piff it up with XState.
This is not just about shiny new stuff, but also hope that the tooling around XState will make it easier for others to understand, visualize and ultimately contribute to a key element of HTTP in specific and APIs in general 🚀
When we revived HTTP Decision Diagram in 2013, the best way to draw this was Omnigraffle. Then we moved over to Cosmogol/JSON and SVG versions.
A decade later, there's XState and XState can serve not only for visualization but also for implementation.
Not many know that HTTP Decision Diagram is part of a higher goal of automating the entire request-response flow, from automatic parsing of headers strictly based on their ABNF grammars, via the decision diagram, and down to the core logic of content negotiation and caching and handling conditionals etc. A decade ago, that has been implemented as a proof of concept via Machina (FSM), but why not piff it up with XState.
This is not just about shiny new stuff, but also hope that the tooling around XState will make it easier for others to understand, visualize and ultimately contribute to a key element of HTTP in specific and APIs in general 🚀
Online references: