Skip to content

Guide · Open source

How to use Remix: install, create an app and what to know

Updated · written with AI from the project's own documentation and checked against our catalogue data

Remix is a JavaScript and TypeScript web framework. This guide is for developers who want to install it, create a starter app, and understand what the project is aiming for. After reading it you will know the install commands, how the single remix package fits with smaller packages, and whether this Remix 3 source suits your project.

Remixremix-run/remix · ★ 33.4k · MIT

Quick start

  1. 1Confirm Node.js is installed. Remix requires Node.js. Make sure it is available on your machine before installing Remix.
  2. 2Install the remix package. Run npm i remix in your project folder to add Remix as a dependency.
  3. 3Create a new app. Run npx remix new my-remix-app to generate a starter app with the CLI.
  4. 4Review the package list. Look through the packages in the repository to see which smaller tools you may need, such as routing, sessions or data tables.
  5. 5Check the project status. Read the README note that Remix 3 is under active development before using it in production.

Check whether Remix fits your project before you start

This repository holds Remix 3, which the README describes as under active development. It is not described as a stable, production-proven framework today, so it may suit experiments and early projects better than critical production systems.

Remix is built around standard browser and server Web APIs such as Fetch, Streams and Web Crypto, with the aim of running across Node.js, Bun, Deno and Cloudflare Workers.

  • Good fit: you want a framework built on standard Web APIs rather than Node-specific ones.
  • Good fit: you want code that can move between Node.js, Bun, Deno and Cloudflare Workers.
  • Less suitable: you need a mature ecosystem of plugins and guides, which the README does not describe.
  • Less suitable: you want Remix 2 or earlier, since this repository is the Remix 3 source.

Install Remix with npm

Remix is distributed as a single remix package. You need Node.js installed. Install the package with npm to add Remix to an existing project.

npm i remix

Create a new Remix app with the CLI

If you are starting from scratch, use the Remix command-line interface through npx. The command takes the name of the app folder you want to create.

npx remix new my-remix-app

Understand the packages behind Remix

Remix is made of many smaller packages, and each one is meant to be usable on its own. The remix package composes them under one umbrella for distribution and documentation, so most people can start there and reach for individual packages when they need them.

The project lists packages for routing, sessions, cookies, headers, middleware, data tables, file storage and testing, among others. Examples include fetch-router for a minimal router on the Fetch API, session for session management, and data-table for a typed, relational query toolkit.

  • fetch-router: a minimal, composable router for the web Fetch API
  • session and session-middleware: session management with cookie-based storage
  • data-table with MySQL, PostgreSQL and SQLite implementations
  • test: a test framework for JavaScript and TypeScript projects

Know the design principles

The README lists six principles, including building on Web APIs, avoiding dependencies with a stated goal of zero, and designing each abstraction to be single-purpose and replaceable. It also states that code should be portable by default across JavaScript runtimes.

These principles explain why Remix prefers web standards such as the Web Streams API over node:stream, and Uint8Array over Node.js Buffers.

  • Use the Web Streams API instead of node:stream.
  • Use Uint8Array instead of Node.js Buffers.
  • Use the Web Crypto API instead of node:crypto.
  • Use Blob and File instead of some bespoke runtime-specific APIs.

Try the bleeding-edge preview build

The README says the latest main branch is also built into a preview/main branch that can be installed directly. This is for people who want the newest changes and accept that they may be less stable.

What people use it for

  • Building a web application with a framework based on standard Web APIs
  • Writing server code meant to run on Node.js, Bun, Deno or Cloudflare Workers
  • Adding individual packages such as a router, session handling or middleware to an existing project
  • Experimenting with a framework whose stated goal is minimal dependencies

Frequently asked questions

How do I install Remix?

Install the single remix package with npm using npm i remix. The README lists Node.js as the prerequisite. To create a starter app, run npx remix new my-remix-app.

Is Remix free to use?

Remix is released under the MIT licence, according to the project listing. The MIT licence generally permits use, modification and distribution, but read the LICENSE file in the repository for the exact terms.

Is Remix production ready?

The README describes this repository, Remix 3, as under active development. It does not describe it as a stable, production-proven framework, so check the current status before relying on it for critical systems.

Which runtimes does Remix support?

Remix aims to run across Node.js, Bun, Deno and Cloudflare Workers, because it prioritises web standards. The README says its packages work seamlessly across these environments.

What is the difference between Remix 2 and Remix 3?

This repository is the Remix 3 source, and the project lists Remix 2 or earlier as not covered here. If you need Remix 2 or earlier, this repository is not the right source for that version.

How does Remix compare to Next.js, SvelteKit, Nuxt and Hono?

Next.js, SvelteKit, Nuxt and Hono are comparable projects in this listing. Remix is distinctive for its emphasis on standard Web APIs, minimal dependencies and a single package that bundles many composable tools. Compare ecosystem maturity and stability for your needs before choosing.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Choose Remix if you want a framework built on standard Web APIs, portable across Node.js, Bun, Deno and Cloudflare Workers, and you are comfortable with an under-development codebase. Pick a more established option such as Next.js, SvelteKit, Nuxt or Hono if you need a mature ecosystem, plugins and guides today.

Install options & downloads