Hackathon MVP for Tasco Open Mobility built with React, TypeScript, Vite, Tailwind, mock vehicle data, and Supabase Auth.
This app uses Supabase Auth only on the frontend. No service-role keys or database logic are required for the current MVP.
Create a .env.local file in the project root with:
VITE_SUPABASE_URL=https://your-project-ref.supabase.co
VITE_SUPABASE_ANON_KEY=your-supabase-anon-keyYou can also copy from .env.example.
If you want full Qwen features (assistant, lens, and voice STT), also add:
VITE_QWEN_API_KEY=sk-...
VITE_QWEN_BASE_URL=https://dashscope-intl.aliyuncs.com/compatible-mode/v1
VITE_QWEN_TEXT_MODEL=qwen-max
VITE_QWEN_FAST_MODEL=qwen-plus
VITE_QWEN_VISION_MODEL=qwen-vl-max
VITE_QWEN_STT_MODEL=qwen3-asr-flash- Enable Email provider in Supabase Auth
- Use magic links for the demo login flow
- Add your local dev URL to allowed redirect URLs, for example:
http://localhost:5173
npm install
npm run dev:localThen open http://localhost:5173, sign in with a magic link, and test all flows locally (including Lens).
Optional production-like local check:
npm run build
npm run preview:localOpen http://localhost:4173.
This is a standard Vite static frontend deployment. No custom backend, serverless API, or service-role key is needed.
- Framework preset:
Vite - Build command:
npm run build - Output directory:
dist
Add these in Vercel for Production and Preview:
VITE_SUPABASE_URL=https://your-project-ref.supabase.co
VITE_SUPABASE_ANON_KEY=your-supabase-anon-key
VITE_QWEN_API_KEY=sk-...
VITE_QWEN_BASE_URL=https://dashscope-intl.aliyuncs.com/compatible-mode/v1
VITE_QWEN_TEXT_MODEL=qwen-max
VITE_QWEN_FAST_MODEL=qwen-plus
VITE_QWEN_VISION_MODEL=qwen-vl-max
VITE_QWEN_STT_MODEL=qwen3-asr-flashSet your Supabase Site URL to your primary deployed app URL, for example:
https://your-project-name.vercel.appAdd these to Additional Redirect URLs:
http://localhost:5173/**
https://your-project-name.vercel.app/**
https://*-your-team-or-account-slug.vercel.app/**If you later add a custom domain, add that too and make it the Supabase Site URL.
- Push the repo to GitHub.
- Import the repo into Vercel.
- Add the two
VITE_environment variables in Vercel. - Deploy.
- Copy the production Vercel URL into Supabase Site URL.
- Add the local, production, and preview redirect URLs in Supabase Auth.
- Redeploy once if you changed env vars after the first deploy.
- Vehicle, booking, and assistant data are still mock-driven
- Auth session persists across refresh via Supabase client storage
- Only the public Supabase URL and anon key belong in the frontend
vercel.jsonis included only to support SPA route refreshes like/vehicleand/assistant