Refactor: Migrate from chrome.storage to wxt/storage for extension
I suggest refactoring our storage layer to use WXT's built-in storage solution (wxt.storage) instead of the currently used chrome.storage.
WXT Storage Documentation: https://wxt.dev/storage.html
The current chrome.storage API is not ideal for cross-browser compatibility, which can create issues when targeting browsers like Firefox (because specifically speaking I need the extension on firefox as well, it's free to register over there unlike chrome webstore).
Benefits of Migrating to wxt.storage
- Cross-browser Compatibility: It automatically uses the correct storage API for the target browser.
- Typesafety: It's designed to work seamlessly with TypeScript.
- Built-in Migrations: It provides a clear API for handling storage migrations as the data schema evolves.
- Reactivity: It includes storage watchers (storage.watch()), which will help simplify state management and improve code maintainability.
I am willing to work on implementing this change. Given the scope, I wanted to raise this issue first to confirm if this is a direction you're interested in as it will also require rewrites. If you agree, you can assign this issue to me.
@lirena00 assigned to you. feel free to create PR