Panko is library which is inspired by ActiveModelSerializers 0.9 for serializing ActiveRecord/Ruby objects to JSON strings, fast.
To achieve it's performance:
- Oj - Panko relies Oj since it's fast and allow to serialize incrementally using
Oj::StringWriter
- Serialization Descriptor - Panko computes most of the metadata ahead of time, to save time later in serialization.
- Type casting — Panko does type casting by it's self, instead of relying on ActiveRecord.
To dig deeper about the performance choices, read Design Choices.
The gem is available as open source under the terms of the MIT License.