All Projects → fagbokforlaget → Simple Fs

fagbokforlaget / Simple Fs

Licence: mit
Handles files on indexeddb like you would do in node.js (promise)

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Simple Fs

Filer
Node-like file system for browsers
Stars: ✭ 389 (+250.45%)
Mutual labels:  indexeddb, filesystem, browser
Popsicle
Simple HTTP requests for node and the browser
Stars: ✭ 238 (+114.41%)
Mutual labels:  promise, browser
Filehound
Flexible and fluent interface for searching the file system
Stars: ✭ 190 (+71.17%)
Mutual labels:  promise, filesystem
replace-in-files
Replace text in one or more files or globs.
Stars: ✭ 21 (-81.08%)
Mutual labels:  filesystem, promise
Android Filebrowser Filepicker
A FileBrowser / FileChooser / FolderChooser for Android that you can integrate to your app to browse/select files from internal/external storage
Stars: ✭ 157 (+41.44%)
Mutual labels:  filesystem, browser
Elemental2
Type checked access to browser APIs for Java code.
Stars: ✭ 115 (+3.6%)
Mutual labels:  promise, indexeddb
indexeddb-orm
Indexed DB ORM
Stars: ✭ 53 (-52.25%)
Mutual labels:  promise, indexeddb
Nohost
A web server in your web browser
Stars: ✭ 164 (+47.75%)
Mutual labels:  filesystem, browser
Electron Filesystem
FileSystem for windows
Stars: ✭ 409 (+268.47%)
Mutual labels:  promise, filesystem
Level Js
An abstract-leveldown compliant store on top of IndexedDB.
Stars: ✭ 485 (+336.94%)
Mutual labels:  indexeddb, browser
Filesystem
FileSystem is an application that allows you to browse the content of your iPhone disk, displaying file and folders, files contents, and detailed informations about file and folder permissions.
Stars: ✭ 148 (+33.33%)
Mutual labels:  filesystem, browser
Browser Shell
A Linux command-line shell in the browser
Stars: ✭ 60 (-45.95%)
Mutual labels:  filesystem, browser
Await Of
await wrapper for easier errors handling without try-catch
Stars: ✭ 240 (+116.22%)
Mutual labels:  promise, browser
Evt
💧EventEmitter's typesafe replacement
Stars: ✭ 305 (+174.77%)
Mutual labels:  promise, browser
Ws Wrapper
Lightweight WebSocket lib with socket.io-like event handling, requests, and channels
Stars: ✭ 58 (-47.75%)
Mutual labels:  promise, browser
Yux Storage
yux-storage 是一个基于 HTML5 IndexedDB 封装的 Web 本地数据离线存储库
Stars: ✭ 64 (-42.34%)
Mutual labels:  promise, indexeddb
Wikipediap2p
WikipediaP2P.org Chrome Extension
Stars: ✭ 105 (-5.41%)
Mutual labels:  browser
Tedis
redis client with typescript and esnext for nodejs
Stars: ✭ 109 (-1.8%)
Mutual labels:  promise
Cryfs
Cryptographic filesystem for the cloud
Stars: ✭ 1,560 (+1305.41%)
Mutual labels:  filesystem
Dynamodb Oop
Speak fluent DynamoDB, write code with fashion, I Promise() 😃
Stars: ✭ 104 (-6.31%)
Mutual labels:  promise

SimpleFS

view on npm npm module downloads Dependency Status Known Vulnerabilities Build Status License: MIT

A minimal, extensible and promise based filesystem layer for modern browsers.

Live Demo

Supported backeneds

  • IndexedDB (default)
  • Memory (experimental and used for testing)

Installation

npm:

npm install --save @forlagshuset/simple-fs

Usage

browser (umd):

<script src='https://unpkg.com/@forlagshuset/[email protected]/dist/SimpleFS.min.js' async></script>
<script>
  const fs = new SimpleFS({name:'storage-name'})
  // do stuff

  await fs.mkdir('/myproject')

  // create a file under root folder
  const content = new Blob(['This is my cool project'], {type: 'plain/text'})
  await fs.writeFile('/myproject/test.txt', content)

  // get content as blob
  let blob = await fs.readFile('/myproject/test.txt')

</script>

browser (modules)

import SimpleFS from '@forlagshuset/simple-fs'
// OR es6 modules from unpkg
import SimpleFS from "//unpkg.com/@forlagshuset/simple-fs?module"

const fs = new SimpleFS({name: 'storage-name'})

// first create root folder
await fs.mkdir('/myproject')

// create a file under root folder
const content = new Blob(['This is my cool project'], {type: 'plain/text'})
await fs.writeFile('/myproject/test.txt', content)

// get content as blob
let blob = await fs.readFile('/myproject/test.txt')

API

mkdir(<path>)
mkdirParents(<path>) // wraps mkdir -p
rmdir(<path>)
rmdirRecursive(<path>) // removes dirs recursively
readFile(<path>, <options>={}) // returns Blob
writeFile(<path>, <data>, <options>={}) // data should be Blob type
outputFile(<path>, <data>, <options>={}) // Wraps writeFile and recursively creates path if not exists
unlink(<path>)
exists(<path>)
stats(<path>)

Browser support

  • Chrome
  • IE Edge
  • Firefox
  • Safari
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].