A high-performance Redis client and message queue library for Clojure with an idiomatic API.
Carmine is a Redis client and message queue library for Clojure that provides an idiomatic API for interacting with Redis. It solves the problem of integrating Redis with Clojure applications by offering high performance, ease-of-use, and production-ready features like connection pooling and automatic serialization.
Clojure developers building applications that require Redis for caching, messaging, or distributed coordination.
Developers choose Carmine for its pure-Clojure implementation, support for the latest Redis features, and additional utilities like a simple message queue and distributed lock API, all with an idiomatic Clojure interface.
Redis client + message queue for Clojure
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
High-performance library written entirely in Clojure with no external dependencies, offering seamless integration and efficiency for Clojure applications.
Fully documented API that includes the newest Redis features, ensuring up-to-date compatibility as per the README's emphasis on latest commands.
Built-in, easy-to-use connection pooling designed for robust and scalable production applications, highlighted as a key feature.
Provides fast and simple APIs for message queues and distributed locks, extending Redis's utility for common distributed systems tasks without additional libraries.
Lacks support for Redis Sentinel and Cluster, forcing users to rely on single node setups or paid Enterprise/Cloud solutions for high availability, as admitted in the compatibility table.
Auto serialization via Nippy adds a dependency and can introduce performance overhead or compatibility issues with custom data types, a trade-off for convenience.
Relies on separate Wiki and cljdoc pages for documentation, which might require extra effort to navigate compared to a unified reference.