Skip to content
This repository was archived by the owner on Sep 19, 2024. It is now read-only.
This repository was archived by the owner on Sep 19, 2024. It is now read-only.

Implement 9p protocol against a local storage (IndexedDB, FileSystem API) #17

@jgoux

Description

@jgoux

To have persistent sessions and files, we need to be able to write file changes to local storage in the browser.

As of today, we have two solutions:

  • IndexedDB
  • FileSystem API

An implementation already exists for IndexedDB: https://github.com/humphd/v86/tree/filer-9p-lastknowngood
The demo: https://humphd.github.io/browser-shell/
The 9p filesystem is mounted under /mnt in this case.

The difficulty we'll have is that we have 9p mounted as / in our case (all files are statically served), so I think we'll have to make a custom implementation where we will check if the file is available in IndexedDB, and if it's not we will fallback to the statically served file.

So we'll have a hosted layer (the current implementation), with a cached layer in-between.

Links about the 9p protocol:

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions