An asynchronous, persistent key-value store for .NET desktop and mobile applications, based on SQLite3.
Akavache is an asynchronous, persistent key-value store built for .NET desktop and mobile applications. It uses SQLite3 as its storage backend to reliably save data to disk, solving the problem of managing local storage for both permanent settings and temporary cached data that needs to expire.
C# developers building cross-platform desktop (Windows) and mobile (Android, iOS) applications that require offline data persistence, caching, or secure local storage.
Developers choose Akavache for its non-blocking asynchronous API that keeps UIs responsive, its modular design allowing choice of JSON serializer, and its robust foundation as part of the ReactiveUI ecosystem for reactive programming.
An asynchronous, persistent key-value store created for writing desktop and mobile applications, based on SQLite3. Akavache is great for both storing important data as well as cached local data that expires.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
All operations are non-blocking, ensuring UI responsiveness in desktop and mobile apps, as emphasized in the philosophy and basic usage examples.
Uses SQLite3 for disk-based storage that survives app restarts, providing reliable data persistence for offline-capable applications.
Supports both System.Text.Json and Newtonsoft.Json with BSON variants, allowing developers to pick based on performance or compatibility needs.
Targets .NET Framework, .NET Standard, and modern .NET versions including Android and iOS, making it versatile for desktop and mobile development.
The new fluent API in V11.1 simplifies configuration and dependency injection setup, improving developer experience over older static methods.
The README warns about deprecated patterns and requires explicit calls like WithSqliteProvider(), leading to a steeper learning curve for proper setup.
Tight integration with Splat and ReactiveUI ecosystems can be a barrier for teams not already using these libraries, adding unnecessary dependencies.
SQLite backend introduces disk I/O overhead compared to purely in-memory solutions, which might be overkill for lightweight caching scenarios.
As a C#-specific library, it's unsuitable for multi-language projects or environments outside the .NET framework, restricting its applicability.