Sponsors
Become a sponsor-
iPulse AI
Open Agentic Investment Research Platform. Inspect deep multi-agent market forecasts and stock picks.
Listed in editorial order, grouped by use case. Click a column header to re-sort the whole list.
Press / to search. Tags open their category. Click a row for details.
Search and filter
Results
| Row number | Tags | |||||
|---|---|---|---|---|---|---|
Data Formats 4 projects |
||||||
| 1 | msgpack Data Formats | 218,163,725 | 2,108 | Data Formats Serialization Database & Storage | ||
|
MessagePack serializer implementation for Python.
|
||||||
| 2 | orjson Data Formats | 205,170,575 | 8,281 | Data Formats Serialization Database & Storage | ||
|
Fast, correct JSON library.
|
||||||
| 3 | marshmallow Data Formats | 86,457,021 | 7,245 | Data Formats Serialization Database & Storage | ||
|
A lightweight library for converting complex objects to and from simple Python datatypes.
|
||||||
| 4 | msgspec Data Formats | 34,941,507 | 4,190 | Data Formats Serialization Database & Storage | ||
|
A fast serialization and validation library supporting JSON, MessagePack, YAML, and TOML.
|
||||||
Object Pickling 2 projects |
||||||
| 5 | cloudpickle Object Pickling | 190,378,841 | 1,950 | Object Pickling Serialization Database & Storage | ||
|
Extends pickle to functions, lambdas, and interactively defined classes, for shipping code to remote workers.
|
||||||
| 6 | dill Object Pickling | 152,356,482 | 2,449 | Object Pickling Serialization Database & Storage | ||
|
Extends pickle to serialize almost any object, including closures and interpreter sessions.
|
||||||
No projects match your search.
Try a broader term, or .
Serialization guide
msgspec works as a faster JSON or MessagePack library on its own. Still, its docs recommend it for the full serialization and validation workflow: define your schemas with type annotations, encode them, then decode them back with validation. Structs are the preferred way to define those types. Pass the type when you decode, and msgspec validates while decoding at no added runtime cost: msgspec.json.decode(data, type=User). A consistent interface covers MessagePack, YAML, and TOML too.
Moving from the standard json module to orjson? The largest difference is that orjson.dumps returns bytes, not str. orjson serializes dataclasses, datetimes, and UUIDs natively. Decoding gives you only dicts, lists, and other builtins, and orjson leaves schemas to validation libraries a level above.
msgpack reads and writes MessagePack, a binary format that lets you exchange data among languages like JSON, but faster and smaller. Call packb and unpackb for one-shot use, and read many objects from one stream with an Unpacker. When the data comes from an untrusted source, set max_buffer_size to limit the buffer.
marshmallow makes no assumption about your web framework or database layer, so its schemas work with just about any ORM, or none. Declare a schema as a class that maps attribute names to fields. Its dump method turns your objects into primitive Python types, and load validates and deserializes incoming data, raising ValidationError on invalid input. To get objects back instead of dicts, decorate a schema method with post_load.
cloudpickle is built for cluster computing, where Python code is shipped over the network to run on remote hosts. It pickles lambdas, plus functions and classes you define in a script, a shell, or a Jupyter notebook, and the result loads back with the standard pickle.loads. Use it only between the exact same version of Python, never for long-term storage.
dill is a drop-in replacement for pickle: write import dill as pickle, and nested functions, lambdas, and more exotic types pickle too. Call dill.dump_module() to save your interpreter session to a file, and dill.load_module() to restore it later. dill isn't meant to be secure against maliciously constructed data, and no pickle is. Never load one from a source you don't trust: use a data format instead.
orjson, msgspec, and msgpack all pitch speed, but msgspec's own benchmark page encourages you to write your own benchmarks before deciding.
Contribute
Know a project that belongs here?
Tell us what it does and why it stands out.