Skip to content

Repository files navigation

Workbase MVP

Private AI-assisted property inspection MVP: FastAPI backend, Expo mobile field app, Vite admin frontend.

Tech Stack

  • Expo / React Native, React 19, FastAPI, SQLite, Vite, TypeScript, Verba AI, Cloudflare Tunnel

Architecture Rules

  • AI provider code stays in backend/app/services/ai; routes stay thin.
  • SQLite source of truth: backend/data/workbase.db.
  • Mobile is the fast field tool; frontend is the admin/dashboard surface.

Environment Setup

  • Backend env: copy backend/.env.example to backend/.env.
  • Mobile env: copy mobile/.env.example to mobile/.env.local.
  • Local AI default: AI_PROVIDER=mock.
  • Live Verba needs: AI_PROVIDER=verba, VERBA_API_KEY, VERBA_CAPTURE_CHARACTER, VERBA_REPORT_CHARACTER.
  • Tunnel script writes PUBLIC_API_BASE_URL, WORKBASE_API_TOKEN, EXPO_PUBLIC_API_BASE_URL, EXPO_PUBLIC_WORKBASE_API_TOKEN.
.\scripts\start-cloudflare-tunnel.ps1

Commands

Stack Command
Backend install cd backend; .\.venv\Scripts\Activate.ps1; pip install -r requirements.txt
Backend run cd backend; .\.venv\Scripts\Activate.ps1; python -m uvicorn app.main:app --reload --host 127.0.0.1 --port 8000
Backend test cd backend; .\.venv\Scripts\python.exe -m pytest -q
Frontend install cd frontend; npm install
Frontend run cd frontend; npm run dev
Frontend typecheck cd frontend; npm run lint
Mobile install cd mobile; npm install
Mobile run cd mobile; npm run start -- --clear
Mobile typecheck cd mobile; npm run typecheck
Mobile optimistic test cd mobile; node scripts\test-optimistic-inspections.js
Tunnel start .\scripts\start-cloudflare-tunnel.ps1
Tunnel validate .\scripts\validate-tunnel-syntax.ps1

DB Wipe

cd backend
.\.venv\Scripts\python.exe reset_db.py --yes

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages