Skip to content

Cloud-based custom scripts restoration#465

Open
louisinger wants to merge 6 commits intovulpemventures:masterfrom
louisinger:cloud-based-restoration
Open

Cloud-based custom scripts restoration#465
louisinger wants to merge 6 commits intovulpemventures:masterfrom
louisinger:cloud-based-restoration

Conversation

@louisinger
Copy link
Copy Markdown
Collaborator

@louisinger louisinger commented Apr 11, 2023

This PR adds a minimal backup feature (#391)

Backup Service

  • a BackupService loads and saves BackupData interfaces from a distant database.
  • ports directory provides two BackupService implementations: BrowserSyncBackupService & GithubBackupService.
  • a new background service has been add to the background-script.ts context: BackupSyncer -> handle synchronization with backup services.

Set up a Marina backup service

The only UI way to set up your backup service is at the onboarding step. onboarding/wallet-restore now provides three choices when selecting the "Ionio restoration":

  1. Github -> store the script details in a private Github repo owned by the user (here is mine) (user must set a personnal access token).
  2. BrowserSync -> use the Browser.storage.sync storage
  3. From file -> former "from JSON file" option

The BrowserSync "problem"

Browser.storage.sync is shared only if the extension is deployed on store. That's why it's hard to test it for now 🤔. Note that it also needs the "extension ID" set up (related to #462).
It's also why I've add the simple Github repo as DB to test it without releasing.


It may need further UI works to close #391 (including a proper settings/backup page). The idea of that PR is to discuss the feature and precise the specs.

please @tiero @bordalix review this

@louisinger
Copy link
Copy Markdown
Collaborator Author

marina-0.5.0.zip

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

API: Offer cloud backup solution for contracts arguments

1 participant