cattrs: Flexible Object Serialization and Validation
Because validation belongs to the edges.
cattrs is a Swiss Army knife for (un)structuring and validating data in Python. In practice, that means it converts unstructured dictionaries into proper classes and back, while validating their contents.
Example
cattrs works best with attrs classes, and dataclasses where simple (un-)structuring works out of the box, even for nested data, without polluting your data model with serialization details:
Scriv is a command-line tool for helping developers maintain useful changelogs. It manages a directory of changelog fragments. It aggregates them into entries in a CHANGELOG file.
Make your functions return something meaningful, typed, and safe!
Features
Brings functional programming to Python land
Provides a bunch of primitives to write declarative business logic
Enforces better architecture
Fully typed with annotations and checked with mypy, PEP561 compatible
Adds emulated Higher Kinded Types support
Provides type-safe interfaces to create your own data-types with enforced laws
Has a bunch of helpers for better composition
Pythonic and pleasant to write and to read 🐍
Support functions and coroutines, framework agnostic
Easy to start: has lots of docs, tests, and tutorials
Tide is a friendly HTTP server built for casual Rustaceans and veterans alike. It's completely modular, and built directly for async/await. Whether it's a quick webhook, or an L7 load balancer, Tide will make it work.
NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.
Lightweight Python utilities for working with Redis.
Render JavaScript-rendered page as HTML using headless Chrome
dateparser provides modules to easily parse localized dates in almost any string formats commonly found on web pages.
boltons should be builtins.
Boltons is a set of pure-Python utilities in the same spirit as — and yet conspicuously missing from — the the standard library, including:
Atomic file saving, bolted on with fileutils
A highly-optimized OrderedMultiDict, in dictutils
Two types of PriorityQueue, in queueutils
Chunked and windowed iteration, in iterutils
A full-featured TracebackInfo type, for representing stack traces, in tbutils
A lightweight UTC timezone available in timeutils.
Recursive mapping for nested data transforms, with remap