jueves, 24 de julio de 2025

KivStore: Biblioteca ligera de Kotlin que simplifica el trabajo con DataStore de Android



SharedPreferences no se recomienda usar por Google por ser bloqueante, no contar con type safety y disponer de un manejo de errores deficiente, en su lugar tenemos a DataStore, y bueno en tiempos donde lo que se tenía era SharedPreferences utilice la librería KotPref, la que proporcionaba un manejo práctico y además agregaba soporte para LiveData. Dicho esto y para proporcionar una migración super fácil me decidí por desarrollar lo que he llamado KivStore.

KivStore es una librería que envuelve a DataStore simplificando su uso, proporciona una api con seguridad de tipos basada en delegados, esto facilita la gestión de datos y observadores de tipo Flow y LiveData.

Todo es tan simple (Como con KotPref, ya que está inspirado en dicha librería), tan solo debemos crear nuestro modelo:


Y listo, ya podemos usarlo en nuestros proyectos:


Así mismo la reactividad, el observar valores es muy sencillo:

Con Flow:

Con LiveData:


Pero sobre todo hay que destacar que la librería mantiene en memoria los datos que se usa, así estos se mantienen actualizados y se sirven al instante, al mismo tiempo que se persisten.

Ya está perfecto, todo bonito, pero como lo instalo y configuro en mi proyecto?

También es sencillo, se instala a través de JitPack:


Y agregamos la dependencia:

implementation("com.github.darkzyrb.kivstore:kivstore:v1.8.1")
// Mirar en el repositorio la última versión

Luego se inicializa en el Application de tu proyecto:


Y listo, creas tus modelos y voila.

Más información en el repositorio: https://github.com/DarkzyRB/kivstore