SpanServer¶

What Can it do for Me?¶
spanserver
is an extension of responder for services that focus on sending and
receiving structured data.
Spanserver adds the following features:
Uniform method for raising and communicating errors through response headers.
In-line data validation, serialization, and deserialization via marshmallow schemas.
Handles mongoDB BSON data natively in http bodies.
Automatic generation of openapi v3 docs with even more minimal overhead than native responder.
Uniform way of handling paged endpoints through request params and response headers.
Automatic decoding of url path parameters through type-hinting.
Adds type hinting to all methods and objects for better code-completion when using an IDE.
Part of a larger family of libraries that handle http clients, REST services, and consumer services.
The Spanreed Family¶
Spanreed is a collection of libraries designed to work together and offer a cohesive set of solutions for writing a microservice-based backend. Spanreed libraries all understand a core set of conventions for common problems like paging, errors, and data validation / loading.
To learn more, see Spanreed’s home-page
Background Reading¶
Before starting, it is recommended you familiarize yourself with the following libraries:
responder - the library spanserver is based on.
marshmallow - data serialization / deserialization library.
This library requires python 3.7++