Skip to content

RayLabsHQ/formatfuse

Repository files navigation

FormatFuse

Privacy-first file conversion in the browser. All processing happens locally using WebAssembly — your files never leave your device.

FormatFuse

Why FormatFuse?

Most file conversion tools upload your files to a server. FormatFuse doesn't. Everything runs client-side in your browser using WebAssembly — no uploads, no server processing, no data collection. Your files stay on your device, period.

Tools

Image — Convert, compress, and resize. Supports PNG, JPG, WebP, GIF, BMP, ICO, TIFF, AVIF, HEIC, and SVG.

PDF — Merge, split, rotate, compress, protect, unlock. Convert between PDF, images, and Markdown.

Video — Convert, compress, trim, resize, rotate. Extract thumbnails and audio. Supports MP4, WebM, MOV, MKV, AVI, and more.

Archive — Create and extract ZIP, TAR, 7Z, RAR, GZ, BZ2, XZ, ISO, CAB, and more.

Developer — JSON formatter, JSON/YAML converter, Base64, QR codes, hashing, UUIDs, passwords, JWT decoder, color converter, text diff, case converter, word counter.

Self-Hosting

Quick Start

git clone https://github.com/RayLabsHQ/formatfuse.git
cd formatfuse
pnpm install
pnpm build
pnpm preview

The app will be available at http://localhost:4321.

Requirements

  • Node.js 18+
  • pnpm 10+

Development

pnpm dev            # Start dev server
pnpm build          # Production build
pnpm check          # TypeScript type checking
pnpm test           # Run tests
pnpm format         # Format code with Prettier

Architecture

FormatFuse is built with Astro + React. Astro handles static page generation, React powers the interactive tools, and Web Workers with Comlink offload WASM computation off the main thread.

src/
├── components/
│   ├── converters/     # Tool-specific components
│   ├── ui/             # Reusable UI (shadcn-style)
│   └── core/           # Shared components
├── pages/              # Astro routes
├── workers/            # Web Workers (WASM processing)
├── hooks/              # React hooks
├── lib/                # Utilities
├── data/               # Tool definitions
└── layouts/            # Page layouts

Tech Stack

WASM Libraries

Contributing

Contributions are welcome. See CONTRIBUTING.md for guidelines.

License

AGPL-3.0 — Free to use, modify, and self-host. If you run a modified version as a public service, you must open-source your changes.

Releases

No releases published

Sponsor this project

 

Packages

 
 
 

Contributors

Languages