Pedestal concepts
Pedestal is an API-first Clojure framework that provides a set of libraries to build reliable and highly concurrent services that are dynamic in nature. It is an extensible framework that is data-driven and implemented using protocols (https://clojure.org/reference/protocols) to reduce the coupling between its components. It favors data over functions and functions over macros. It allows for the creation of data-driven routes and handlers that can apply a different behavior at runtime based on incoming requests. This makes it possible to create highly flexible and dynamic services that are well suited for microservice-based applications. It also supports the building of scalable asynchronous services using server-sent events (SSE) and WebSockets:
The Pedestal architecture is based on two main concepts, Interceptors and Context Map, and two secondary concepts, Chain Providers and Network Connectors. All the core logic of the Pedestal framework has been implemented as Interceptors...