We are excited to announce the release of Remix v2.7.0 which stabilizes Remix Vite and Remix SPA mode
We announced the unstable Vite plugin a little over 3 months ago. Now 75 closed issues and 136 pull requests later we are ready to call this plugin stable
This release marksโฆ
We are beyond excited to announce that Remix is joining Shopify! ๐
Thank you all for joining us on this journey. It's only getting better from here!
Learn more ๐
We have some exciting news to share ...
Remix is going open source! ๐ฅ (soon!)
It's too good to keep private, so we are sharing it freely with everyone. Also, we raised $3M to ensure the future of Remix is secure.
Stable release coming soon! ๐
Today we are excited to share our new Vite plugin available in Remix v2.2.0!
Viteโs lightning fast DX โก๏ธ means
10x faster HMR
5x faster HDR
We are also happy to announce that Remix is officially sponsoring Vite!
Read more about our announcement here
One question we get quite often is how Remix compares to Next.js. Today we're answering that question ๐
The short answer is that we think Remix makes better trade-offs than Next in a variety of areas, both in DX and UX.
The long answer ๐ ๐
Remix is for web apps! We want you to build websites with UI interactions that are as tight as Sum 41's Chuck ๐ธ
Live App:
Remix Singles on how it was made:
Source:
Mark the date ๐! Remix is going free and open source on Monday and the team will be hosting a live stream to answer your questions!
Join to ask questions.
And hit the bell ๐ on the video: to be notified when we go live!
๐ฃ React Router v6 is here! ๐
โข Automatic layout handling with nested routes ๐ฃ
โข Route ranking ๐
โข Relative routing and links โ
โข Completely rewritten with React hooks ๐ฃ
โข Over 50% smaller than v5 ๐
Read the blog post NOW ๐
๐ React Router 6.4 is here!
When you realize <a> and <form> are the same, your router gets very powerful.
- Data loading/mutations/revalidation
- Error/interruption/race condition handling
- Pending/Skeleton UI w/ <Suspense>
We're excited to announce the release of Remix Stacks!
๐ฅ
We've made you productive building web apps.
Now we're making you productive at starting web apps as well! โก
Exciting things are happening over at ๐
We're bringing much of what people love about Remix into React Router! This has huge implications.
Get ready to delete a *lot* of code โ๏ธ
Data so fast you'll puke! ๐คข
- instant transitions with prefetched loaders
- dodge the network with client caches
- instant search with indexedDB data replication?!
Releasing one video per day
YouTube Playlist:
Live Demo:
โฆ
We're excited to announce that
@dan_abramov
is coming to
#RemixConf
next month!
There's still time to grab your tickets: ๐
See you there โ ๐ ๐คฏ
Join us for the 12 days of Trellix ๐
From now until Christmas we'll release a daily Remix Single, each based on Trellix, a Trello clone with some advanced UX. We're covering topics like User Auth, Pending & Optimistic UI, Drag & Drop, and much more! ๐งต
Did you know that NASA uses Remix? ๐๐๐ฐ๏ธ
They may not be shipping JavaScript to the moon, but NASA is using Remix to build a public collaboration platform for the astronomy research community ๐
Also, it's oss!
๐ฃ Just released React Router v6.0.0-beta.1 ๐ฅณ๐ฅณ
โข Squashed some nasty bugs ๐
โข TypeScript improvements ๐ค
โข And more goodies! ๐ฌ
Full release notes:
Huge thanks to all of our amazing contributors! ๐ค
We've released Remix v2.6.0 ๐
Cloudflare support for Vite
We are incredibly excited to officially offer (unstable) Cloudflare support for the Vite plugin. Get started today!
Unstable Presets
Presets are a low-level config API designed to ease integration with other tools andโฆ
Remix v2.3.0 just shipped ๐ข
* Stabilized useBlocker
* New unstable_flushSync API
* Over a dozen bug fixes and improvements for the Vite plugin
See the full changelog here ๐
๐ฃ Remix v2 pre-release is out!
Let's see if our strategy worked! If you're up-to-date on all future flags, this should be the most boring major upgrade you've ever had.
Weโd like to extend a warm thank-you to
@kentcdodds
for working with us this past year ๐
And we wish him all the best as he moves on to his next adventure, building !
Thanks, Kent!
React Router just merged increased React.Suspense support to the dev branch!
The next releases of React Router and Remix will let you compose any async things you want in the browser ๐ง๐
๐ข Remix Streaming with Suspense shipped in v1.11!
@ryanflorence
gives us a quick preview of a couple use cases, and there's so much more to talk about which we plan to do soon ๐
Need some realtime features in your app?
Look no further than standard HTTP Server Sent Events and EventSource ๐ค
Remix Utils by
@sergiodxa
makes easy.
Remix Utils:
MDN:
๐ฃ Just in time for the holidays, we just released Remix v1.1.0 ๐
โข 64 new first-time contributors! ๐
โข First-class support for
@Cloudflare
Pages โก๏ธ
โข Support for building to node ESM ๐
โข Added multipart file uploads ๐พ
Full release notes ๐
๐ React Router v6.3.0 is out!
The v5 backwards compatibility package so you can upgrade from v5 to v6 incrementally with zero downtime ๐
๐ข No long running branches
๐ฐ No merge conflict nightmares
๐ No accidentally broken pages
๐ฃ Remix Run Beta starts next Wed., October 28th ๐
Join the newsletter so you don't miss it , beta licenses will me limited.
Here's an overview of some of the basic features, check it out ๐
๐ข Remix v1.16 is out!
๐งฑ Stable CSS features
โข CSS Modules
โข Vanilla Extract
โข CSS Side-Effect Imports
โข Tailwind
๐งช Major updates to `unstable_dev` with more reliable HMR and HDR, perf work begins now to to get stable
๐ฌ Lots of other goodies
We are thrilled to be working with Kent! We are going to have a lot more amazing content to share with you all very soon.
Just in time for the 1.0 release ๐
I'm thrilled to announce that I'm moving into the next phase of my goal of making the world better by helping you create quality software:
I am now the Director of Developer Experience at
@remix_run
!
This is from the network tab of a demo we've been working on.
In this 61.19ms we determined your geolocation, read some cookies, rendered an app, and served it back to you.
@remix_run
+
@CloudflareDev
Workers = โก๏ธ
๐ Remix and React Server Components
One of the biggest questions we keep getting is "what's the deal with Remix and React Server Components?"
Remix is uniquely positioned to take full advantage of RSC, but its too early right now, here's why:
๐ฃ We're excited to announce Remix v1.5.0 ๐
๐ฆ Official support (no longer experimental)
๐ธ Updated Web Fetch implementation that's closer to the Fetch Spec
๐ Improved Streaming support
Give it a shot:
npx create-remix
๐ข React Router v6.4.0-pre.2 is out!
We've brought everything we've learned about data in Remix back to React Router ๐
Simple Demo:
Docs (new beta site):
Release Notes:
Remix v2.1.0 is out now! This minor version includes
- Experimental support for View Transitions ๐
- Stabilized createRemixStub ๐
- Several patch changes, including fixes to SerializeFrom, which caused type errors for several folks upgrading to v2
Did you know you can serialize promises over the network from loaders?
It speeds up TTFB, and loads more in parallel for faster FCP and LCP too!
Docs:
Talk where
@ryanflorence
introduced it:
Got buttons that need to post to different actions but need to be siblings for CSS?
Wondering if you need nested forms or maybe event.preventDefault()?
Keep your mutations declarative with <button form>! HTML has you covered ๐ and Remix will enhance!
We're thrilled to have
@vercel
as a deployment partner and return as a sponsor of
#RemixConf
this year!
Vercel has invested a lot to make the deployment experience with
@remix_run
terrific! Thanks Vercel!
We just shipped Remix v2.4.0 ๐ข
This release introduces the highly anticipated clientLoader & clientAction ๐
Additionally, we shipped:
- v3_relativeSplatPath
- Vite plugin improvements
- 18 patches
๐ Technical Explanation of Remix
You may be wondering "What *is* Remix?".
> Is it just like Next.js?
> I heard somebody say it's like Rails?
A little from column A, a little of column B. Here's a technical explanation:
React Server Components are an exciting, but often misunderstood bit of technology.
@markdalgleish
's definition is:
> Server components are just virtual DOM over the network
Watch his talk at
@ReactAdvanced
London! ๐
Cloudflare support Remix on Vite ๐
If you like being on the absolute bleeding edge (and want to find any bugs still hiding) You can start playing with it today
npx create-remix
@nightly
--template
๐ฃ We are hiring, both engineering and design!
โข Build incredible user experiences
โข Work from home on a mission-focused team
โข Set your own schedule
โข Make a huge impact
โข Competitive compensation
If that sounds interesting, let's chat!
We're excited to announce The Remix Podcast! Here's what you can look forward to hearing in this awesome first season of the podcast focused on helping you improve your app's UX! ๐
๐ Got a search field on your site?
๐๏ธ speed it up with `<PrefetchPageLinks />` as the user types! Data and assets are loaded into the browser cache just like `<Link prefetch />` (in fact, Link just renders this)
Docs:
Did you know your web server is an incremental static site generator?
All you need is an HTTP header and a CDN to get all the performance you're looking for with large, complicated static builds--builds that make some websites impossible!
๐๐๐
Oh wow! That's a lot of awesome stuff Ryan!
๐ toasts (with just action code โผ๏ธ)
๐ฅ Fetchers
๐ค Caching
Join Ryan's workshop at
#RemixConf
there are still a few tickets left!
Thank you
@ReactSummit
and everyone at the
#ReactSummit
conference for naming Remix the breakthrough of the year! ๐
We are honored to even be considered, and to have the chance to give back to the React and web development communities! ๐
๐ฃ We are hiring! ๐
Do you love browsers? Did you immediately answer "YES" but then wonder if that was a trick question? ๐
Most importantly: do you get a kick out of creating amazing user experiences?
We would love to work with you! ๐
Check it ๐๐ฟ
Remix != React. Our tagline is not โthe React frameworkโ.
Yes, we are starting there. But itโs more than just another framework for building sites with React.
Itโs about building great user experiences. Sometimes with React. ๐
Hah
Wanna make an api server using the Web Platform tools (fetch(), Request, Response etc.) ?
@remix_run
does not seem to be too bad even if you don't even care about the React stuff at all ๐
Weโre incredibly excited and honored to work with
@CloudflareDev
on native support for Cloudflare Workers and Cloudflare Pages in Remix! โก๏ธ
The future is running your app at the edge. Remix will be there ready to welcome you ๐ค
๐ฃ Remix v1.19.0 is released! ๐
โข Improved networking options in the dev server ๐ฆพ
โข Easier bundle analysis ๐
โข Better polyfill support on node.js ๐
โข Many more bug fixes ๐
Full release notes ๐
We released Resource Routes a year and a half ago for non-UI use cases like:
โข pdfs
โข webhooks
โข mobile APIs
โข and more!
What have you done with Resource Routes?
๐ Backend For Your Frontend
New, quick guide on how to use Remix as the "backend for your frontend". Though it can be used as a full stack framework, it doesn't have to be!
We just released Remix v2.8.0 ๐ฟ with a few improvements to Remix Vite, the classic compiler, and the new Layout export
- Resolved viteConfig now gets passed to Remix Vite plugin's buildEnd hook
- Support for custom build.assetsDir option
- Fixed default root ErrorBoundary &โฆ
Ready to migrate your Remix app to
@vite_js
? ๐
Join
@pcattori
for a detailed walkthrough of how you can take an existing Remix app and run it on Vite! โก๏ธ
Hydrogen is remixed! ๐ช
Hydrogen v2 is built on top of Remix. Read more about the teamโs decision and how we worked together to provide the best experience for all Shopify merchants โค๏ธ
We're so excited to officially announce the full line up of the
#RemixConf
2022 speakers! ๐ฅณ
See you all in May!
(We've also published the full schedule: )
@josedonato__
@dan_abramov
Remix is missing the ability to render an infinite number of component types w/o an infinite bundle size.
Easiest use case to think of is a CMS where each content "block" has a React component to match it. Today, all of them must be in the browser bundles
We'll integrate RSC.
We made the React Router website repository public, check it out!
- Remix (ofc)
- Docs fetched from router source code repo
- Cache-Control headers for speedy responses
- stale-while-revalidate for fresh responses
- LRUCache for speedy cache misses
Remix v2 is coming soon! ๐
We take semver seriously and want to show โค๏ธ to our community. Read all about our approach to developing v2 while providing a smooth upgrade path for all v1 apps.
Just shipped: 1.10.0-pre.5 ๐ข
Normally we wouldn't talk much about a pre-release, but we think this one deserves some attention.
A little gift for you this holiday season ๐
Scroll positions are tricky in SPAs. React Router and Remix emulate the browser's behavior so you don't have to think about it.
But for many web app UIs, there's a better UX made possible with a couple of new APIs:
โ๏ธ Not Another Framework!
The web ecosystem changes fast. Though exciting, it's exhausting when your hard earned expertise in a piece of tech dies when you move on.
We think Remix's focus on the web platform helps mitigate this, check out ๐
๐ฅ Remix Single: Multiple Forms and Single Button Mutations.
Did you know <button> can send a value like <input>? Remember our old friend <input type=hidden>?
Excited to announce a new ๐ Remix course on
@eggheadio
:
Over an hour of content that'll take you from 0 to deployed with a database, auth, and CRUD. Enjoy!
This is a really big deal. Opening up the compiler has been a big ask since the beginning, and we're finally able to start delivering thanks to
@pcattori
and
@markdalgleish
's amazing work!
Read more about the decision and work in the official RFC ๐
๐
Unstable Vite support has officially landed in the
@remix_run
repo! ๐
Still early and have to land support for runtimes and custom servers before stable, but dang does it feel good to say:
Remix runs on
@vite_js
๐ฅ
๐ง Remix Preview
๐จ๐ปโ๐ซ A preview of what
@mjackson
and
@ryanflorence
have in store for Remix, a framework for dynamic React web apps.
๐๐ผ
Donโt forget to star our GitHub repo if you havenโt already!
If youโre enjoying using Remix, a โญ๏ธ goes a long way toward showing others. Every one counts!
Thank you ๐
We just published Internationalization with Remix by
@arisa_dev
Learn how to implement internationalization (i18n) in your Remix project. Discover the significance of i18n, gain an understanding of the core principles, and learn various strategies for effective i18n management๏ฟฝ๏ฟฝ๏ฟฝ
Deploying Remix to GitHub Pages
With Remix SPA mode you now have even more options for deploying your Remix projects
In this video we show you how you can deploy to a simple static server like GitHub Pages
๐ฅ Remix Newsletter Subscription Single!
Join Ryan as he builds a newsletter subscription form with Remix and
@ConvertKit
- SPA UX, 90's API
- Animated transitions
- Error handling
- Focus Management
- SR ARIA announcements
- Race conditions
๐
Did you know that is built with Remix? ๐
@Shopify
is building and shipping products to millions of users with Remix. We sat down with the team who built to discuss the project.
was one of the first Remixโฆ
๐ Validate user input on the server and render validation errors in the client with ease thanks to `useActionData`
Data Writes Guide:
useActionData doc:
@reactjs
@joe_puzzo
@JustJenFelice
@nextjs
Not loving the "unseat" sentiment here ๐
For Remix to win, Next.js does _not_ have to lose.
Two projects, making different tradeoffs, when zoomed out is still collaborative.
We don't have to paint on the same canvas to push the art forward together.
Congrats to our friends at
@Cloudflare
on their launch of Radar 2.0! ๐
It's Remix running directly on Cloudflare Workers, so it's incredibly fast. Such a great pair! ๐ฅ
Just look at those Lighthouse scores ๐
Strong work, everyone! ๐ช
We are delighted how the Vite plugin improves DX for existing Remix sites, and creates a more streamlined path from React Router to Remix
To get started, run
npx create-remix
@latest
--template remix-run/remix/templates/unstable-vite
Or watch this video