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
Stop Storing Third-Party Tokens in Your Database
Rolling your own OAuth token storage can be a security liability. Token Vault securely stores access and refresh tokens from federated providers and handles exchange and renewal automatically. Connected accounts, refresh exchange, and privileged worker flows included.
Rate This Project
Login To Rate This Project
User Reviews
Be the first to post a review of Cheshire!