MCPcopy Index your code
hub / github.com/Akryum/reactive-fs

github.com/Akryum/reactive-fs @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
29 symbols 60 edges 14 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

reactive-fs

A reactive filesystem interface based on Vue 3 reactivity system.

import { createReactiveFileSystem } from 'reactive-fs'

// Create a reactive filesystem
const fs = await createReactiveFileSystem({
  baseDir: __dirname,
  glob: ['**/*.js'],
  ignored: ['excluded'],
})

// List files
fs.list()
fs.list('.', { excludeSubDirectories: true })
fs.list('sub')

// List is reactive
let results = []
fs.effect(() => {
  // This will update `results` each time a file is added or removed
  results = fs.list('.', { excludeSubDirectories: true }).sort()
})

// Create a file
fs.createFile('foo.js', '')

// Remove a file
fs.files['foo.js'].remove()

// Read a file
const content = await fs.files['meow.js'].waitForContent

// `content` is a reactive property
let result
fs.effect(() => {
  result = fs.files['meow.js'].content
})

// Write to a file
fs.files['meow.js'].content = 'waf'

// Destroy the filesystem
await fs.destroy()

Extension points exported contracts — how you extend this code

Context (Interface)
(no doc)
src/context.ts
ListOptions (Interface)
(no doc)
src/reactive-fs.ts
ReactiveFile (Interface)
(no doc)
src/file.ts
ReactiveFileSystemOptions (Interface)
(no doc)
src/options.ts
InternalFile (Interface)
(no doc)
src/file.ts

Core symbols most depended-on inside this repo

queueFsOp
called by 4
src/file.ts
createReactiveFileSystem
called by 2
src/reactive-fs.ts
watch
called by 2
src/reactive-fs.ts
createReactiveFile
called by 2
src/file.ts
activate
called by 2
src/file.ts
read
called by 2
src/file.ts
setContent
called by 2
src/file.ts
isObject
called by 2
src/util.ts

Shape

Function 24
Interface 5

Languages

TypeScript100%

Modules by API surface

src/file.ts12 symbols
src/reactive-fs.ts11 symbols
src/util.ts2 symbols
src/context.ts2 symbols
src/watcher.ts1 symbols
src/options.ts1 symbols

For agents

$ claude mcp add reactive-fs \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact