Skip to main content

Prerequisites

  • Node.js 18 or laternodejs.org
  • npm — ships with Node.js

Installation

1

Clone the repository

git clone https://github.com/c1mplete/SmartMoveNewUI.git
cd SmartMoveNewUI
2

Install dependencies

npm install
3

Create the environment file

Create a .env.local file in the project root:
VITE_SUPABASE_URL=your_supabase_project_url
VITE_SUPABASE_ANON_KEY=your_supabase_anon_key
You can find both values in your Supabase project under Settings → API.
Cloud sync and authentication require these variables. The app works fully without them — all data is stored in localStorage and the EFA API is called directly.
4

Start the dev server

npm run dev
Vite starts a local dev server and listens on all network interfaces (0.0.0.0). The terminal output shows the local URL, typically http://localhost:5173.

Build

To produce a production build:
npm run build
The output goes to dist/. You can preview the built output locally using:
npx vite preview

Environment variables

VariableRequiredDescription
VITE_SUPABASE_URLNoYour Supabase project URL
VITE_SUPABASE_ANON_KEYNoYour Supabase anon (public) key
All Vite environment variables must be prefixed with VITE_ to be accessible in client code. Variables without this prefix are not exposed to the browser.
Never add your service_role key to .env.local or any client-side environment file. The anon key is safe to expose — it is restricted by Row Level Security.

Vite configuration

The Vite config (vite.config.ts) sets up:
  • React plugin@vitejs/plugin-react for JSX and Fast Refresh
  • Tailwind plugin@tailwindcss/vite for CSS processing
  • Path alias@ maps to ./src for cleaner imports
  • Asset types.svg and .csv files are handled as static assets
  • Network hostserver.host: true exposes the dev server on all interfaces for local network testing
  • VS Code with the ESLint and Tailwind CSS IntelliSense extensions
  • TypeScript support is built-in via Vite’s React plugin

Project structure

Where to find components, services, and styles.

Deployment

Deploy SmartMove to Vercel.