Lalabase
Tickets, Doku, Zeiterfassung und Kundengespräche an einem Ort, durchsuchbar per KI. Für Softwarefirmen mit Kundenprojekten. Open Source: auf deinem eigenen Server oder in unserer Cloud in Deutschland.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证AI platform for Finnish businesses
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
Multi-tenant AI business assistant for Finnish SMBs.
Architecture source of truth: docs/ARCHITECTURE.md.
Next.js 15 (App Router) · TypeScript strict · Tailwind + shadcn/ui · Supabase (Postgres + pgvector, Auth, Storage, Realtime) · Prisma · Anthropic Claude + OpenAI · Vapi · Stripe · Resend · Upstash (Redis + QStash) · next-intl (fi/en/ar, RTL).
Owned primitives live in src/components/ui. Add more with:
• Tenant isolation (see docs/DEVELOPMENT.md §5): never import @/server/db/prisma outside查看完整 README ↗Multi-tenant AI business assistant for Finnish SMBs.
Architecture source of truth: docs/ARCHITECTURE.md.
Next.js 15 (App Router) · TypeScript strict · Tailwind + shadcn/ui · Supabase (Postgres + pgvector, Auth, Storage, Realtime) · Prisma · Anthropic Claude + OpenAI · Vapi · Stripe · Resend · Upstash (Redis + QStash) · next-intl (fi/en/ar, RTL).
npm install
cp .env.example .env # fill in all values (env.ts fails the build otherwise)
# Database
npm run db:migrate # local development migrations
# Existing shared environments: run the read-only compatibility preflight
# before db:deploy. See docs/release-runbook.md for the protected release flow.
psql $DIRECT_URL -v ON_ERROR_STOP=1 -f prisma/sql/006_legacy_baseline_preflight.sql
npm run db:deploy # tracked baseline + feature + RLS migrations
psql $DIRECT_URL -f prisma/sql/004_storage.sql # Supabase only; safe to rerun
npm run db:seed # global prompt library + default pipeline data
# Calendar & Booking RLS is applied by the tracked Prisma migration
# 20260718000000_calendar_booking_rls. Do not run prisma/sql/005 separately.
# prisma/sql/001-003 are retained only for historical operator compatibility;
# new environments receive those database objects from tracked migrations.
# Supabase dashboard (one-time):
# - Auth → Hooks → register public.custom_access_token_hook (access token hook)
# - Auth → Providers → enable Google OAuth
# - Auth → Email templates → localized templates
# Stripe (test mode):
# - create Products syveka_starter / syveka_pro with monthly+annual EUR prices
# - paste price ids into .env
stripe listen --forward-to localhost:3000/api/v1/webhooks/stripe
npm run dev
Owned primitives live in src/components/ui. Add more with:
npx shadcn@latest add dialog dropdown-menu avatar tooltip table tabs badge select sheet sonner
docs/DEVELOPMENT.md §5): never import @/server/db/prisma outside src/server/db (ESLint-enforced). Business code uses tenantDb(ctx.orgId).docs/DEVELOPMENT.md §6): every Server Action / API handler starts with requirePermission("...").docs/DEVELOPMENT.md §9): logical Tailwind utilities only (ms-* me-* ps-* pe-* text-start).docs/DEVELOPMENT.md §10): Zod schemas in src/lib/validators are shared by forms and actions.audit().| Module | Status |
|---|---|
| Foundation: Next 15 · TS strict · Tailwind/shadcn · Prisma (30 tables) · RLS · Supabase · env validation | ✅ |
| Auth: login/register/magic link/forgot/reset/verify · onboarding · invites · org switch | ✅ |
RBAC: 5-role matrix · requirePermission · audit-logged denials | ✅ |
| AI Chat: SSE streaming · model router · guardrails · tools · citations · quotas | ✅ |
| Knowledge Base: upload → extract → chunk → embed (pgvector) → RAG | ✅ |
| CRM: contacts (search/filter/GDPR) · deals kanban · activities · audit | ✅ |
| Calendar: month view · event CRUD · Voice-AI-badged events | ✅ |
| Voice AI: Vapi sync · +358 provisioning · in-call tools · post-call pipeline | ✅ |
| Workflows: 6 triggers · 6 step types · resumable QStash runner · builder UI | ✅ |
| Billing: Stripe checkout/portal/webhooks · entitlements · usage meters · plan cards | ✅ |
| Notifications: in-app feed · Realtime badge · email templates | ✅ |
| Analytics: sales funnel · AI usage · voice sentiment (SSR SVG charts) | ✅ |
| Prompt Library: global+org templates · variables · use-in-chat | ✅ |
| Settings: profile · organization+AI instructions · members · billing · API keys · audit log | ✅ |
| Superadmin: org overview · platform usage | ✅ |
| CI/CD: lint/type/test · i18n parity · gitleaks · RLS isolation job · staged deploy | ✅ |
| Tests: unit (RBAC, chunker, citations, plans, interpolation) · RLS SQL · Playwright smoke | ✅ |
| GDPR: consent capture · retention purge job · erasure Edge Function · EU-only infra | ✅ |
Deferred to Phase 3 (per roadmap §25): public REST API surface beyond webhooks (auth helper resolveApiKey is ready), Google/Outlook calendar sync, CSV contact import UI, PWA push, reranking, custom-LLM voice mode.
npm install # (registry unavailable in the build sandbox — run locally)
npm run typecheck && npm test
node scripts/check-i18n-parity.mjs
npm run migrations:check
Release operators must follow docs/release-runbook.md.