- Notifications
You must be signed in to change notification settings - Fork15
New home for Smile format (https://en.wikipedia.org/wiki/Smile_(data_interchange_format))
License
FasterXML/smile-format-specification
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
"Smile" is a binary data format that defines a binary equivalent of standardJSON data format (*).
Format was specified in 2010 byJackson JSON processor development team.First compliant implementation was included as a Jackson backend for Jackson version 1.6,released in September 2010.
(*) with following exceptions
- Number magnitude and precision are limited by length-indicators: sowhile for most practical purposes limits are never reached, there are theoretical limits. Specifically, "Big Integers" and "Big Decimals" (matching Java
java.math.BigIntegerandjava.math.BigDecimal) are limited to encoded byte-lengths representable by 32-bit positive integers (about 2 GB).
Design documentation includes:
- Smile Format Specification describes format itself; how it works and what a compliant parser/generator implementations needs to do.
- Smile Format Design Goals explains rationale for design decisions concerning specification.
- SmileFAQ
- Smile Wikipedia entry
- User documentation:
Smile Codecs
- Clojure
- Cheshire library offers support via Jackson
jackson-dataformat-smile
- Cheshire library offers support via Jackson
- C
- libsmile is a small C-library for reading and writing Smile data.
- Go
- go-smile Smile decoder written in Golang.
- Java
- Jackson provides Smile support throughjackson-dataformat-smile modules) format codec
- Full support: including streaming access, data binding and tree model (100% parity with textual JSON)
- Jackson 2.9 added "non-blocking" ((aka "asynchronous") decoding for JSON and Smile format backends
- Protostuff project supports Smile both as a low-level data format, and as format used for its RPC implementation
- Jackson provides Smile support throughjackson-dataformat-smile modules) format codec
- Javascript
- smile-js Smile decoder written in Javascript (only decodes (reads), does not encode (write))
- Kotlin Multiplatform
- kotlinx-serialization-smile pure Kotlin Multiplatform implementation for
kotlinx-serialization, supports JVM, Native, JS, etc
- kotlinx-serialization-smile pure Kotlin Multiplatform implementation for
- Python
- Rust
- serde-smile Serde serializer and deserializer written in Rust.
Frameworks, Systems that use Smile codec (encoder and decoder)
- Apache Flink can use Smile for compiled plans (as of 2.1.0 viaFLINK-37341)
- Apache Solr can use Smile as the response format with the
wt=smileparameter. - Elastic Search uses Smile as transport format supports access using Smile encoding.
Here are some external articles, blog posts, research papers that may be of interest:
About
New home for Smile format (https://en.wikipedia.org/wiki/Smile_(data_interchange_format))
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Packages0
Uh oh!
There was an error while loading.Please reload this page.