ReboFilesDocs
Start3
What is ReboFiles
Getting started
Demos to run
Put it in your app6
React component
Headless: your own UI
Without a framework
Styling and themes
Keyboard and accessibility
Languages
Files9
Uploads
Previews and the viewer
Search
Live changes and large folders
Comments
Starred and fields
Versions, trash and space
Download as .zip
Word documents
The server14
The route
Frameworks and sign-in
Who may do what
Storage: S3, GCS, Azure and disk
Checking uploads
Metadata: SQLite and Postgres
Database schema
Sharing and links
Activity and notifications
Hooks, logs and limits
Retention, holds and export
Desktop and other origins
Sync a folder
Going to production
Together1
AI assistants (MCP)
Reference5
Packages
Components and hooks
Client API
HTTP routes
Status and roadmap
↑↓ to move↵ to openEsc to close38 pages

Reference Packages

Packages

Every package is at the same version, 0.12.0, and changes together. Each has no dependencies but core and, where it says, Rebodocs as an optional peer.
Start here

Which one do I install?

  • A React application: @rebofiles/react for the page, @rebofiles/server for the route.
  • A page without React: @rebofiles/drive, and the server.
  • Changing a drive in a job of your own: @rebofiles/core.
  • An assistant: @rebofiles/mcp, beside the server.
React 18+

@rebofiles/react

The whole drive as <FileDrive>, the headless hooks it is built from, and <SharedLink> for a link.

FileDrive, SharedLink, DriveProvider, useEntries, useEntry, useActions, useUploads, useSettings, useComments, useActivity, useTextSearch, useNotifications, useRequests, usePeople, useExpiring, useWithField, useDrive, createMemoryClient · its README

Any browser

@rebofiles/drive

The whole drive without a framework, mounted on an element; the client of the routes; uploads, archives and pictures made in the page.

mountDrive, mountSharedLink, createDriveClient, createLinkClient, createMemoryClient, createUploads, refusalText, lookInDrive, downloadZip, writeZip, textOf, hashOf, CSS, TEXTS · its README

Node 22.12+

@rebofiles/server

The routes, authorize(), signed addresses, the bytes on S3 or a disk, the metadata in memory, SQLite or Postgres.

createDriveHandler, nodeHandler, byRoles, everyone, s3Storage, s3OptionsFrom, diskStorage, memoryMetadata, sqliteMetadata, postgresMetadata, checkType, clamav, Refused, openTelemetry, deriveAll · its README

Anywhere, no DOM

@rebofiles/core

The model of a drive as pure functions: the tree, names, the trash, versions, sharing, search, activity. No dependencies.

emptyDrive, createFolder, addFile, move, rename, moveToTrash, addVersion, share, addLink, search, textMatch, activityOf, changes · its README

Node 22.12+

@rebofiles/mcp

Tools for an AI assistant, over HTTP or stdio, with the user’s own rights; with Rebodocs, its Word documents edited, each change a version.

createMcpHandler, serveStdio, TOOLS, allTools, documentTools, driveAt · its README

Node 22.12+, or a desktop app

@rebofiles/sync

A folder of the disk kept as a folder of the drive, both ways: changes sent and taken, conflicts kept twice, moves followed. In the desktop application, and as a command.

syncOnce, watchSync, nodeFolder, loadState, saveState, rebofiles-sync · its README

Apps

The applications

Demos to run: the playground, the demo, a real bucket, the desktop and this site, each a folder of apps/.