Skip to content

jamwt/convex-fs

Repository files navigation

ConvexFS

ConvexFS Logo

npm version npm downloads license build status docs

Virtual filesystem for Convex, backed by Bunny.net Edge Storage & CDN


ConvexFS is a Convex component that provides filesystem-like operations for managing files in your Convex application. Instead of dealing with raw blob storage, you work with familiar concepts like paths, files, and directories—while getting the performance benefits of a global CDN.

Features

  • Path-based file management — Organize files with familiar filesystem paths
  • Atomic transactions — Move, copy, and delete files with preconditions to prevent data races
  • Reference-counted blobs — Efficient storage with automatic deduplication
  • Signed CDN URLs — Secure, time-limited download links served from Bunny.net's global edge network
  • Soft deletes & disaster recovery — Configurable grace periods let you recover from accidental deletions
  • Flexible authentication — Bring your own auth logic for uploads and downloads
  • File expiration — Set automatic expiration times on files for temporary uploads, time-limited sharing, or session-scoped content
  • Custom CDN parameters — Pass parameters to Bunny.net edge rules for on-the-fly transformations like custom download filenames and image optimization

Example app

The repository includes a runnable example app that allows you to curate a photo gallery.

Status

Beta — Running in production applications. The API is stable; any breaking change will be called out in the changelog and gated behind a minor version bump until 1.0.

Documentation

For installation instructions, guides, and API reference, visit:

convexfs.dev

License

Apache-2.0

About

High-performance, durable file management component for Convex apps built on Bunny.net

Resources

Contributing

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages