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

Open
@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

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions