Skip to main content
SmartMove is deployed on Vercel. The build output is a static SPA in dist/ that Vercel serves with a CDN.

Build

npm run build
Vite compiles the app and outputs to dist/. The build includes all assets, chunks, and an index.html entry point.

Deploy to Vercel

1

Import the repository

In the Vercel dashboard, click Add New → Project and import your SmartMoveNewUI repository.
2

Configure the build settings

Vercel auto-detects Vite. Confirm these settings:
SettingValue
Framework presetVite
Build commandnpm run build
Output directorydist
Install commandnpm install
3

Add environment variables

In Settings → Environment Variables, add:
VariableValue
VITE_SUPABASE_URLYour Supabase project URL
VITE_SUPABASE_ANON_KEYYour Supabase anon key
Set both variables for the Production, Preview, and Development environments.
4

Configure SPA routing

SmartMove uses client-side routing via React Router. Without a rewrite rule, Vercel returns a 404 for any URL other than /. Add a vercel.json to the project root:
{
  "rewrites": [
    { "source": "/(.*)", "destination": "/index.html" }
  ]
}
This tells Vercel to serve index.html for all routes, letting React Router handle navigation client-side.
5

Deploy

Click Deploy. Vercel runs the build and publishes to a .vercel.app URL. Subsequent pushes to the main branch trigger automatic redeployments.

Environment variables

VariableRequiredDescription
VITE_SUPABASE_URLNoSupabase project URL. Required for cloud sync and authentication.
VITE_SUPABASE_ANON_KEYNoSupabase anon (public) key. Required for cloud sync and authentication.
The app deploys and runs without these variables. Users can search routes, view departures, and save data locally. Cloud sync and account features are unavailable until the variables are set.

Preview deployments

Vercel creates a preview deployment for every pull request. To test cloud sync features in previews, add the Supabase environment variables to the Preview environment in Settings → Environment Variables.

Custom domain

To attach a custom domain, go to Settings → Domains in the Vercel project and follow the DNS configuration instructions. No changes to the app code are needed.

Development setup

Run SmartMove locally before deploying.

Architecture

Overview of the full stack.