Progresyvus langų valymo verslo valdymo CRM su AI asistentu.
Before performing any action:
- Load and follow
AGENT_PROTOCOL.md - Follow
.cursor/rules.md(HARD RULES) - Apply
.cursor/rules/*.mdc(WORKFLOW RULES)
Execution is not allowed without loading these rules.
- Hybrid Classifier - 45+ intencijų atpažinimas (greitas + tikslus)
- Memory Priority - konteksto supratimas ir atminties prioritizavimas
- Planning Engine - daug žingsnių automatizavimas
- Auto-Memory - svarbių pokalbių automatinis išsaugojimas
- 📋 Klientų valdymas - klientų duomenų bazė
- 📦 Užsakymų valdymas - langų valymo užsakymai
- 💰 Išlaidos - verslo išlaidų sekimas
- 📊 Analitika - pajamų/ išlaidų ataskaitos
- 📅 Kalendorius - darbų planavimas
- 📦 Inventorius - valymo priemonių sandėlis
- 👥 Komanda - darbuotojų valdymas
- PWA (Progressive Web App)
- Real-time duomenų sinchronizacija
- Offline palaikymas
- AI balso komandos
- React 19 + TypeScript
- Vite
- Tailwind CSS 4
- Supabase
- Google Gemini / OpenRouter AI
Versija 1.0.0 (package.json). Santrauka ir gamybiniai reikalavimai: CHANGELOG.md. Prieš viešą žymą ir klientams: docs/PRODUCTION_CHECKLIST.md, docs/DEPLOY.md, docs/LAUNCH_AND_SALES_NEXT_STEPS.md (§2.3).
# 1. Instaluoti priklausomybes
npm install
# 2. Aplinka: nukopijuokite .env.example → .env ir įrašykite VITE_SUPABASE_* iš Supabase (Settings → API)
copy .env.example .env
npm run check:env
# Jei naudojate Supabase debesyje:
# - paleiskite supabase/production_owner_id_schema.sql
# - tada supabase/public_booking_rpcs.sql (viešai rezervacijai)
# 3. Tik CRM naršyklėje (dažniausiai užtenka)
npm run dev
# 4. CRM + sąskaitų API lokaliai (server.cjs :3001)
npm run dev:full- Pilnas vietinis rinkinys:
npm run dev:full(Vite :5173 +server.cjs:3001). Tiknpm run dev— PDF bus, bet automatinis siuntimas per Resend neveiks, kol API neprieinamas. .envšaliaserver.cjs:RESEND_API_KEY,RESEND_FROM_EMAIL, taip patVITE_SUPABASE_*/SUPABASE_*pagal.env.example(JWT tikrinimui siunčiant).- Diagnozė: naršyklėje atverkite
http://127.0.0.1:5173/health(dev) —invoiceEmail: true, jei Resend raktas įrašytas serveryje. - Po sąskaitos generavimo CRM toast papildomai paaiškina, jei API neišjungtas, bet trūksta Resend arba neveikia :3001 (be poreikio žiūrėti į konsolę).
- Automatinis testas:
npm run test:invoice(kartu sunpm run verify).
Jei matote ekraną „Reikalinga duomenų bazė“: po .env pakeitimo būtina sustabdyti npm run dev (Ctrl+C) ir paleisti iš naujo. Patikra: npm run check:env.
VITE_DEMO_MODE=false
VITE_SUPABASE_URL=jūsų-supabase-url
VITE_SUPABASE_ANON_KEY=jūsų-raktas
VITE_GEMINI_API_KEY=gemini-raktas
VITE_OPENROUTER_API_KEY=openrouter-raktas
Naudoja hibridinį metodą:
- Greitasis režimas - keyword atpažinimas (1-5ms)
- GPT fallback - neaiškiems atvejams (200-500ms)
- Caching - pasikartojančioms užklausoms
- Svarbūs pokalbiai automatiškai išsaugomi
- Prioritetas pagal: svarbą, datą, raktažodžius
- Kategorijos: klientas, verslas, procesas, kita
- Mėnesio apžvalga
- Klientų aptarnavimas
- Nemokėjimų priminimai
- Sezoninis pasiruošimas
npm run dev # Paleisti dev serverį (port 5173; API server.cjs — 3001)
npm run dev:full # Paleisti frontend + API kartu
npm run build # Buildinti produkcijai
npm run preview # Peržiūrėti buildą
npm run lint # TypeScript tikrinimas
npm test # Vitest vienetiniai / integraciniai testai
npm run test:smoke # Playwright smoke testas prieš preview
npm run test:console # Konsolė be netikėtų klaidų (pagrindinis meniu)
npm run test:invoice # /health JSON (sąskaitų API kelias)
npm run test:cloud # Playwright su tikru Supabase (.env.cloud-e2e.local) — žr. .env.cloud-e2e.example
npm run test:journey:headed # E2E build + matomas Chromium: eina per skiltis (žr. tests/user-journey.spec.ts)
npm run test:tour:headed # journey + smoke, vienas po kito, --headed (stebėjimui)
npm run verify # pilnas vartai (be test:cloud; cloud — pasirinktinai CI arba ranka)
npm run check:cloud # Patikrina ar netrūksta cloud/env nustatymų- Žemėlapis: docs/DEPLOY.md.
- Pirmas kartas LT: docs/PALEIDIMAS_VERCEL_RENDER.md.
- Techninė santrauka / triktis: DEPLOYMENT.md.
- Render:
render.yaml; API:npm start. Prieš release:npm run verify,npm run check:cloud.
src/
├── components/ # Bendri komponentai
│ ├── ChatAssistant.tsx
│ └── Layout.tsx
├── services/ # AI servisai
│ ├── aiService.ts
│ ├── hybridClassifier.ts
│ ├── memoryPriority.ts
│ ├── modularPrompt.ts
│ └── planningEngine.ts
├── views/ # Puslapiai
│ ├── Dashboard.tsx
│ ├── ClientsView.tsx
│ ├── OrdersView.tsx
│ ├── ExpensesView.tsx
│ └── ...
├── App.tsx
├── supabase.ts # Duomenų bazė
└── types.ts
MIT
2026 Švarus Darbas CRM
