Skip to content

xHomu/remix-v2-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

50f24a5 · Nov 24, 2024

History

76 Commits
Sep 16, 2023
May 1, 2023
May 1, 2023
May 1, 2023
Oct 13, 2023
Nov 24, 2024
Apr 5, 2024
Sep 16, 2023
Aug 30, 2023
May 1, 2023
Apr 5, 2024
Jul 13, 2023
Oct 17, 2023

Repository files navigation

Use the following commands to quickly start a Remix v2 app with a basic Express server:

  • CommonJS + server.js: npx create-remix --template https://github.com/xHomu/remix-v2-server/tree/cjs-server.js
  • CommonJS + server.ts: npx create-remix --template https://github.com/xHomu/remix-v2-server/tree/cjs-server.ts
  • ES Modules + server.js: npx create-remix --template https://github.com/xHomu/remix-v2-server/tree/esm-server.js
  • ES Modules + server.ts: npx create-remix --template https://github.com/xHomu/remix-v2-server/tree/esm-server.ts

If updating from a v1 Remix app, the following files probably needs to be adjusted:

  • package.json
  • remix.config.js
  • tsconfig.json
  • server.ts or server.js

What changes will depend on whether your repo is ESM/CJS, and whether you're using a typescript or javascript server:

For more on Remix v2 dev server, check these talks by @pcattori Pedro Cattori!


Welcome to Remix!

Development

Start the Remix development asset server and the Express server by running:

npm run dev

This starts your app in development mode, which will purge the server require cache when Remix rebuilds assets so you don't need a process manager restarting the express server.

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 express applications you should be right at home just make sure to deploy the output of remix build

  • server.js
  • 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