Cheshire is a high-performance JSON encoding and decoding library for Clojure, built atop Jackson to combine fast parsing/generation with advanced support for types like Dates, UUIDs, Sets, Symbols, and the binary JSON SMILE format. Custom encoding is supported from 2.0.0 and up if you encounter a bug, please open a GitHub issue. From 5.0.0 onwards, custom encoding has been moved to be part of the core namespace (not requiring a namespace change). Custom and Core encoding have been combined in Cheshire 5.0.0, so there is no longer any need to require a different namespace depending on what you would like to use. Cheshire will automatically use a BigInteger if needed for non-floating-point numbers.
Features
- Fast JSON encoding and decoding leveraging Jackson for speed
- Supports rich Clojure data types: Date, UUID, Set, Symbol, with custom encoders
- Provides SMILE format support for binary JSON serialization
- Flexible encoding options like pretty-printing, key transformations, and ASCII escaping
- Streaming-based parsing and generation—support for parse-stream, parsed-seq, and SMILE variants
- Widely adopted in the ecosystem (e.g. included in Babashka) and praised for both performance and ease of use
Categories
LibrariesLicense
MIT LicenseFollow Cheshire
Other Useful Business Software
Custom VMs From 1 to 96 vCPUs With 99.95% Uptime
Live migration and automatic failover keep workloads online through maintenance. One free e2-micro VM every month.
Rate This Project
Login To Rate This Project
User Reviews
Be the first to post a review of Cheshire!