Derrick Hammer 4b5fe20df3 | ||
---|---|---|
app | ||
patches | ||
public | ||
.DS_Store | ||
.eslintrc.cjs | ||
.gitignore | ||
.prettierrc.json | ||
LICENSE | ||
README.md | ||
components.json | ||
env.d.ts | ||
package.json | ||
postcss.config.js | ||
tailwind.config.ts | ||
tsconfig.json | ||
vite-env.d.ts | ||
vite.config.ts |
README.md
templates/spa
This template leverages Remix SPA Mode and the Remix Vite Plugin to build your app as a Single-Page Application using Client Data for all of your data loads and mutations.
Setup
npx create-remix@latest --template remix-run/remix/templates/spa
Development
You can develop your SPA app just like you would a normal Remix app, via:
npm run dev
Production
When you are ready to build a production version of your app, npm run build
will generate your assets and an index.html
for the SPA.
npm run build
Preview
You can preview the build locally with vite preview to serve all routes via the single index.html
file:
npm run preview
[!IMPORTANT]
vite preview
is not designed for use as a production server
Deployment
You can then serve your app from any HTTP server of your choosing. The server should be configured to serve multiple paths from a single root /index.html
file (commonly called "SPA fallback"). Other steps may be required if the server doesn't directly support this functionality.
For a simple example, you could use sirv-cli:
npx sirv-cli build/client/ --single