Synaplan
開源 AI 平台,供企業使用:自行託管的 AI 代理、符合 GDPR 的聊天機器人小工具、RAG 知識庫、WhatsApp 與 Outlook AI、MCP、多模型路由。Docker、Kubernetes 或託管於 Germ
AI 翻譯
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Its a Small Biz CRM
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
Your whole business. Organized.
A simple AI-powered CRM for contacts, deals, projects, tasks, and everything that happens between them.
Tiny CRM is built for one person running several businesses at once — not for a sales
department with an admin. It is organised around four questions that every screen tries
to answer:
What is happening? · Who is involved? · What needs my attention? · What should I do next?
Where HubSpot offers a settings page, Tiny CRM picks a sensible default.
The login screen also has an Open the demo workspace shortcut.檢視完整 README ↗A simple AI-powered CRM for contacts, deals, projects, tasks, and everything that happens between them.
Tiny CRM is built for one person running several businesses at once — not for a sales department with an admin. It is organised around four questions that every screen tries to answer:
What is happening? · Who is involved? · What needs my attention? · What should I do next?
Where HubSpot offers a settings page, Tiny CRM picks a sensible default.
npm install
npm run db:migrate # creates the local SQLite database
npm run db:seed # loads a realistic demo workspace
npm run dev
Open http://localhost:3000 and sign in:
| Account | Password | Plan |
|---|---|---|
[email protected] | tinycrm | Lifetime — the full demo dataset |
[email protected] | tinycrm | Free — for exercising plan limits |
The login screen also has an Open the demo workspace shortcut.
Four workspaces (Artifact Intelligence, Artifact Digital, DropQ, Personal Business Development) holding 16 companies, 30 contacts, 13 projects, 22 deals, 6 RFP opportunities, 34 tasks, 10 notes and a populated activity, email and calendar history.
It is written as a narrative rather than random noise: a provost who has gone quiet on a budget decision, a pilot blocked on a security review, an RFP with a questions deadline today. That is what makes the dashboard and Tiny AI worth looking at on first run.
| Shortcut | Action |
|---|---|
⌘K | Command bar — search everything, or ask Tiny AI |
⌘N | Quick add |
⌘/ | Tiny AI panel |
Tiny AI has two modes, and the UI always says which one answered.
Without an API key it runs a built-in reasoning engine. This is not a stub: relationship
strength, deal momentum, win probability, project health, go/no-go recommendations,
duplicate detection and every hygiene check are computed by the application from your
data (src/lib/scoring.ts, src/lib/ai/recommendations.ts). They are exact, instant, free,
and every score explains itself — click any badge to see the factors that produced it.
With an API key the same computed facts are handed to a model, which writes them up in prose and can answer open-ended questions.
# .env
ANTHROPIC_API_KEY="sk-ant-..." # or OPENAI_API_KEY
ANTHROPIC_MODEL="claude-opus-5"
Two rules hold in both modes:
| Command | What it does |
|---|---|
npm run dev | Development server |
npm run build | Production build |
npm run typecheck | TypeScript, no emit |
npm run lint | ESLint |
npm run db:migrate | Apply migrations |
npm run db:seed | Reload the demo dataset |
npm run db:reset | Drop, migrate, reseed |
npm run db:studio | Prisma Studio |
npm run db:loadtest | Build a 25k-record workspace and time every screen's queries |
npm run db:loadtest:clean | Remove it |
npm run db:use-postgres | Switch the datasource to PostgreSQL |
The schema is written to run unchanged on both. It avoids every provider-specific
feature: no native enums (String columns validated in src/lib/enums.ts), no scalar lists
(real join tables), no JSON columns (JSON-in-String with typed helpers), and money as
integer minor units rather than Decimal.
npm run db:use-postgres # flips the one provider line
# set DATABASE_URL="postgresql://..."
npx prisma migrate dev --name init-postgres
npm run db:seed
src/lib/db.ts selects the Prisma driver adapter from the shape of DATABASE_URL, so no
application code changes.
npm run build && npm run typecheck && npm run lint
node e2e-verify.mjs # 15 end-to-end browser checks (needs npm run dev)
npm run db:loadtest # query timings at 25,000 contacts
e2e-verify.mjs drives a real browser through sign-in, the command bar, creating and
completing a task, dragging a deal between pipeline stages, the Tiny AI panel, workspace
switching, logging an activity, the analytics charts, AI capture, dark mode, mobile
layout and the marketing page.
docs/ARCHITECTURE.md — how it is built, what it is measured at,
and what would have to change to go further.Next.js 16 (App Router, React 19) · TypeScript · Tailwind CSS v4 · Radix primitives · Prisma 7 · SQLite / PostgreSQL · NextAuth v5 · Recharts · dnd-kit · Anthropic / OpenAI behind a provider abstraction.