avocato: simple and fast object serialization

Latest Version Travis-CI Documentation Status Code Coverage

avocato is a simple and fast ORM/framework-agnostic object serialization library for converting complex objects to and from simple Python datatypes.

Don’t be scared if you’re using an ORM/framework. It can easily be adapted to be used with any ORM/framework of your liking. Currently it supports Django ORM and peewee.

This library is heavily influenced by serpy.


$ pip install avocato


Find documentation at avocato.rtfd.io


import avocato

class Bar(object):
    patrick = 'star'

class Foo(object):
    over = 9000
    spongebob = 'squarepants'
    bar = Bar()

class BarSerializer(avocato.Serializer):
    patrick = avocato.StrField()

class FooSerializer(avocato.Serializer):
    over = avocato.IntField()
    spongebob = avocato.StrField()
    bar = BarSerializer()

foo = Foo()
# {'over': 9000, 'spongebob': 'squarepants', 'bar': {'patrick': 'star'}}

Indices and tables