BrowserFS backends for DOM APIs. DOM APIs are only available natively in browsers.
Please read the BrowserFS documentation!
HTTPRequest: Downloads files on-demand from a webserver using fetch.Storage: Stores files in a Storage object, like localStorage and seesionStorage.IndexedDB: Stores files into an IndexedDB object database.WorkerFS: Lets you mount the BrowserFS file system configured in the main thread in a WebWorker, or the other way around!For more information, see the API documentation.
npm install @browserfs/fs-dom
🛈 The examples are written in ESM. If you are using CJS, you can
requirethe package. If running in a browser you can add a script tag to your HTML pointing to thebrowser.min.jsand use BrowserFS DOM via the globalBrowserFS_DOMobject.
You can use DOM backends, though you must register them if you plan on using configure:
import { configure, fs, registerBackend } from '@browserfs/core';
import { Storage } from '@browserfs/fs-dom';
registerBackend(Storage);
await configure({ fs: 'Storage', options: { storage: localStorage } });
if (!fs.existsSync('/test.txt')) {
fs.writeFileSync('/test.txt', 'This will persist across reloads!');
}
const contents = fs.readFileSync('/test.txt', 'utf-8');
console.log(contents);
Generated using TypeDoc