Welcome to Remix!
Development
From your terminal:
npm run dev
This starts your app in development mode, rebuilding assets on file changes.
Deployment
First, build your app for production:
npm run build
Then run the app in production mode:
npm start
Now you'll need to pick a host to deploy it to.
DIY
If you're familiar with deploying node applications, the built-in Remix app server is production-ready.
Make sure to deploy the output of remix build
build/
public/build/
Using a Template
When you ran npx create-remix@latest
there were a few choices for hosting. You can run that again to create a new project, then copy over your app/
folder to the new project that's pre-configured for your target server.
cd ..
# create a new project, and pick a pre-configured host
npx create-remix@latest
cd my-new-remix-app
# remove the new project's app (not the old one!)
rm -rf app
# copy your app over
cp -R ../my-old-remix-app/app app
Unable to get correct initial theme?
Hey Ross,
Were you able to get automatic detection of the users theme from the OS to work with this approach? I'm trying to apply your technique whilst deploying to Cloudflare Pages, so I'm not sure if that makes any difference or if there's something I should take into account because of this.
I've been able to get the theme swapping to work using the button.
FART on very first request?
Hi, I would like to ask if this solution you don’t have this problem that when a user comes to your site for the very first time, then he didn’t see FART. The sam should be the case using incognito mode on every new request.
I have very similar solution to yours and I can’t get rid of that problem. On Remix discussion page I was told it can’t really work on that initial request.
If I switch to Tailwind and CSS approach, then I get another error. This time regarding class missmatch between server and client.
Such a simple feature like color scheme is so far the most advanced one I’ve worked on for my hobby project.