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
Go From AI Idea to AI App Fast
Access Gemini 3 and 200+ models. Build chatbots, agents, or custom models with built-in monitoring and scaling.
Rate This Project
Login To Rate This Project
User Reviews
Be the first to post a review of Cheshire!