Skip to content

✨ Async Storage v3 #1221

@krizzu

Description

@krizzu

Async Storage v3

I wanted to improve the Async Storage for a while now, and the time has finally come. The v3 is a complete rewrite of the library, using latest tools (Kotlin/Swift, Kotlin Multiplatform) that would simplify the expansion of its original capabilities.

The big picture

The v3 is about improving the current implementation and making it easier to expand its capabilities. The big idea is to provide:

  • Easy, incremental transition from v2
  • API compatible with Web Storage API and improved method signatures to match latest best practices
  • Error handling that is predictable
  • A way to seperate data (scoped storage), so it’s not a "single bucket” for all
  • Proper hook implementation, that is reactive to changes (think of TanStack Query, but for persistent storage)
  • A way to handle database files (think of backups, checking storages sizes etc)
  • Better brownfield integration

The implementation plan

I track the implementation and testing progress in #1215.

The release plan

v3 would be released under next tag, so it can be adopted and tested early. Once proved stable, it will be promoted to latest.

Alternatives

No response

Implementation Details

No response

Additional Context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    v3Related to version 3

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions