remix README

The project's README from github.com/remix-run/remix. As one markdown file: README.md.



Remix



Welcome to Remix 3!

This is the source repository for Remix 3. It is under active development.

We published a blog post earlier this year with some of our thoughts around Remix 3. It explains our philosophy for web development and why we think the time is right for something new. When working on Remix 3, we follow these principles:

  1. Model-First Development. AI fundamentally shifts the human-computer interaction model for both user experience and developer workflows. Optimize the source code, documentation, tooling, and abstractions for LLMs. Additionally, develop abstractions for applications to use models in the product itself, not just as a tool to develop it.
  2. Build on Web APIs. Sharing abstractions across the stack greatly reduces the amount of context switching, both for humans and machines. Build on the foundation of Web APIs and JavaScript because it is the only full stack ecosystem.
  3. Religiously Runtime. Designing for bundlers/compilers/typegen (and any pre-runtime static analysis) leads to poor API design that eventually pollutes the entire system. All packages must be designed with no expectation of static analysis and all tests must run without bundling. Because browsers are involved, --import loaders for simple transformations like TypeScript and JSX are permissible.
  4. Avoid Dependencies. Dependencies lock you into somebody else's roadmap. Choose them wisely, wrap them completely, and expect to replace most of them with our own package eventually. The goal is zero.
  5. Demand Composition. Abstractions should be single-purpose and replaceable. A composable abstraction is easy to add and remove from an existing program. Every package must be useful and documented independent of any other context. New features should first be attempted as a new package. If impossible, attempt to break up the existing package to make it more composable. However, tightly coupled modules that almost always change together in both directions should be moved to the same package.
  6. Distribute Cohesively. Extremely composable ecosystems are difficult to learn and use. Remix will be distributed as a single remix package for both distribution and documentation.

Goals

Although we recommend the remix package for ease of use, all packages that make up Remix should be usable standalone as well. This forces us to consider package boundaries and helps us define public interfaces that are portable and interoperable.

Each package in Remix:

This means Remix code is portable by default. Remix packages work seamlessly across Node.js, Bun, Deno, Cloudflare Workers, and other environments.

We leverage server-side web APIs when they are available:

The benefit is code that's not just reusable, but future-proof.

Packages

Most packages in this repository are standalone JavaScript/TypeScript tools. The remix package composes them under one umbrella for distribution and documentation.

Installation

To try the current Remix beta, install the next dist-tag:

npm install remix@next

To create a new Remix app with the CLI, use npx remix@next new:

npx remix@next new my-remix-app

If you want to play around with the bleeding edge, we also build the latest main branch into a preview/main branch which can be installed directly with pnpm (version 9+):

pnpm install "remix-run/remix#preview/main&path:packages/remix"

Or, just install a single package:

pnpm install "remix-run/remix#preview/main&path:packages/fetch-router"

Agent Skills For Building Apps

Agents that are starting a Remix 3 app from this repository should use the remix app skill. The CLI prepack step copies this skill into the app template so generated apps can use the same guidance.

Contributing

We welcome contributions! If you'd like to contribute, please feel free to open an issue or submit a pull request. See CONTRIBUTING for more information.

License

See LICENSE

remix (remix-run/remix)

oidc
Searching Database…

33.4K ·GitHub
What is this?Remix 3 is a full-stack web framework built directly on Web APIs (Streams, Fetch, Web Crypto) rather than bundler-specific abstractions, distributed as one umbrella 'remix' package made of many standalone JS/TS tools.
Is this one package or a collection of standalone tools?It is a monorepo of many single-purpose, independently usable packages (router, auth, session, cli, data-table, ui, etc.) that are bundled together for easy distribution under the main 'remix' package.
How do I create a new Remix app?Run 'npx remix@next new' with the CLI to scaffold a new Remix 3 app, or install the 'next' dist-tag to try the current beta; bleeding-edge builds of main are also published to a preview/main branch installable with pnpm 9+.
Does it only run on Node.js?No, Remix 3 packages are built on server-side Web APIs so they run seamlessly across Node.js, Bun, Deno, Cloudflare Workers and other JS runtimes; development of this repo itself requires Node >=24.3.0.
Is Remix 3 ready for production use?Not yet as a stable release - it's only available as a beta via the 'next' dist-tag and is still under active development, so APIs can change.
What does Model-First Development mean for this framework?It is one of Remix 3's core design principles: optimize the source code, docs, and tooling for LLMs, and build abstractions that let applications use AI models directly in the product, not just as a dev tool.
Does Remix 3 ship its own UI library?Yes, the 'ui' package is Remix's own view layer with a reconciler, component model, and first-party UI components, built independently of React.
What is the 'remix app' Agent Skill mentioned in the README?It's an Agent Skill that AI coding agents should use when starting a new Remix 3 app from this repo; the CLI's prepack step copies it into generated app templates so scaffolded apps get the same guidance.
Why does Remix avoid bundlers and external dependencies?Two guiding principles drive this: 'Religiously Runtime' means no package should rely on bundlers/compilers/static analysis, and 'Avoid Dependencies' aims for zero third-party deps, wrapping anything unavoidable.
Creator
remix-run
Size
132 MB
Stars
33.4K
Age
5y
Commits · 90 Days