# AvroEx v2.2.1 - Table of Contents > An Avro encoding/decoding library written in pure Elixir ## Modules - [AvroEx](AvroEx.md): AvroEx is a library for encoding and decoding data with Avro schemas. Supports parsing schemas, encoding data, and decoding data. - Schema - [AvroEx.Schema](AvroEx.Schema.md) - [AvroEx.Schema.Array](AvroEx.Schema.Array.md) - [AvroEx.Schema.Context](AvroEx.Schema.Context.md) - [AvroEx.Schema.DecodeError](AvroEx.Schema.DecodeError.md) - [AvroEx.Schema.Enum](AvroEx.Schema.Enum.md) - [AvroEx.Schema.Fixed](AvroEx.Schema.Fixed.md) - [AvroEx.Schema.Map](AvroEx.Schema.Map.md) - [AvroEx.Schema.Primitive](AvroEx.Schema.Primitive.md): Functions for handling primitive types in Avro schemas - [AvroEx.Schema.Record](AvroEx.Schema.Record.md) - [AvroEx.Schema.Record.Field](AvroEx.Schema.Record.Field.md) - [AvroEx.Schema.Reference](AvroEx.Schema.Reference.md) - [AvroEx.Schema.Union](AvroEx.Schema.Union.md) - Exceptions - [AvroEx.DecodeError](AvroEx.DecodeError.md): Exceptions in decoding Avro data - [AvroEx.EncodeError](AvroEx.EncodeError.md): Exceptions in encoding Avro data