Company
Date Published
Author
Anaïs Betts
Word count
423
Language
English
Hacker News points
None

Summary

GitHub has open-sourced Akavache, an asynchronous, persistent key-value cache library designed for native desktop and mobile applications in C#. Akavache functions similarly to memcached, helping applications manage the downloading and caching of remote data efficiently while maintaining responsive user interfaces. It addresses issues of inconsistent and duplicated caching code by unifying the caching of various object types, such as HTTP responses, JSON objects, and images. Akavache's core is a key-value byte array store with extensions for handling arbitrary objects, HTTP requests, image loading, and secure storage of user credentials. The library utilizes Reactive Extensions to provide non-blocking operations through Observables, simplifying concurrency problems in UI programming. An example of its application includes Twitter for Mac, where cached content is immediately available with logic for refreshing data when necessary. Akavache is also integrated into Play for Windows, showcasing its utility in diverse applications. For those interested, the library is available on GitHub and can be installed via NuGet.