Main
Default Export
import fs from '@microart/fs';
// use like regular, simply proxies to internal nodejs 'fs' module
fs.readdirSync();
FileSystem class
The file system class is where the magic of the library comes from. It allows you to setup all sorts of providers to retrieve files and information.
import { FileSystem } from '@microart/fs';
const { fs } = new FileSystem();
Default config, same as importing just fs or using the builtin fs module
const { fs } = new FileSystem({
provider: example provider instance
});
Using a custom provider
Providers:
LocalProvider
import { LocalProvider } from '@microart/fs';
const { fs } = new FileSystem({
provider: new LocalProvider({
root: './', // maps '/' to whatever './' is
})
});
// Regular
fs.readdirSync('/');
// home, boot, etc, mnt, var, usr, root, lib
// FileSystem with root mapped to './'
fs.readdirSync('/');
// index.js, node_modules
ProxyProvider
import { ProxyProvider } from '@microart/fs';
const { fs } = new FileSystem({
provider: new ProxyProvider({
getItems() {
return [
{
name: "Test Folder",
type: "folder",
getItems() {
return [];
}
}
]
}
})
});
fs.readdirSync('/');
// Test Folder
S3Provider
import { S3Provider } from '@microart/fs';
const { fs } = new FileSystem({
provider: new S3Provider({
endpoint: '',
region: '',
accessKey: '',
accessSecret: '',
})
});
fs.readdirSync('/');
// folder1, test-folder2, examplefolder
FTPProvider
import { FTPProvider } from '@microart/fs';
const { fs } = new FileSystem({
provider: new FTPProvider({
host: '',
port: '',
username: '',
password: '',
})
});
fs.readdirSync('/');
// folder1, test-folder2, examplefolder
Last updated