Skip to content

mjackson/remix-the-web

Repository files navigation

This repository is a collection of packages for use with Remix or any web framework you choose.

Philosophy

Each package in this repository has a single responsibility; it does one thing well.

To maximize interoperability between packages, we build on web standards. Where standards are missing or incomplete, we augment them in unobtrusive ways to minimize the chance of incompatibility.

What exactly we mean by "web standards"? It means we use:

You get the idea. The benefit of writing JavaScript like this is that it's portable between various runtimes. Unless explicitly noted, all packages in this repository work on any JavaScript runtime you might be using: Node.js, Bun, Deno, Cloudflare Workers, etc.

The goal is that these packages should be useful for anyone who is building for the web. If you're using Remix, we've designed it from the start to work with web standards. If you're using some other framework, you should easily be able to integrate these tools into your workflow as well without going full-blown Remix. If you're building your own framework, we hope you'll be able to build on this foundation as well.

Packages

We currently publish the following packages:

  • fetch-proxy: Easily build HTTP proxies using the fetch() API
  • file-storage: Key/value storage for JavaScript File objects
  • form-data-parser: A request.formData() wrapper with streaming file upload handling
  • headers: A toolkit for working with HTTP headers in JavaScript
  • lazy-file: Lazy, streaming Blobs and Files for JavaScript
  • multipart-parser: Fast, streaming parser for multipart messages
  • node-fetch-server: Build HTTP servers for Node.js using the web fetch() API
  • tar-parser: Fast, streaming parser for tar archives

License

See LICENSE