Synaplan
開源 AI 平台,供企業使用:自行託管的 AI 代理、符合 GDPR 的聊天機器人小工具、RAG 知識庫、WhatsApp 與 Outlook AI、MCP、多模型路由。Docker、Kubernetes 或託管於 Germ
AI 翻譯
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Open-source client management for freelancers & agencies: proposals, contracts, invoices, client portal. Self-hostable on Supabase.
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗Open-source client management for freelancers and agencies.
Clients, projects, proposals, contracts, invoices and a client portal, in one app you can use hosted or run yourself. A self-hostable, open-source alternative to tools like HoneyBook, Bonsai and Dubsado, built on React and Supabase.
Website · Self-hosting · Contributing · Security
| Layer | Tools |
|---|---|
| Frontend | React 18, TypeScript, Vite, Tailwind CSS, shadcn/ui, TanStack Query, TipTap |
| Backend | Supabase: Postgres with row-level security, Auth, Storage, Edge Functions (Deno) |
| Resend | |
| Scheduling | pg_cron + pg_net for reminders and recurring invoices |
The browser talks to Supabase directly. Row-level security scopes every table to a workspace, and edge functions handle anything that needs the service role: sending email, the token-authenticated client portal, and scheduled jobs.
Requirements: Node.js 20+ and a Supabase project (the free tier is fine). The self-hosting guide explains how to set the project up.
git clone https://github.com/redmonkin/core-client-hub.git clientra
cd clientra
npm install
cp .env.example .env # fill in your Supabase URL and anon key
npm run dev # http://localhost:8080
Useful scripts:
| Command | What it does |
|---|---|
npm run dev | Start the dev server |
npm run build | Production build into dist/ |
npm run lint | ESLint |
npm run typecheck | TypeScript checks (Vite's build does not typecheck) |
CI runs lint, typecheck and build on every pull request.
Clientra runs on a single Supabase project, Resend for email, and any static host for the website. The self-hosting guide walks through every step:
supabase db push).RESEND_API_KEY, EMAIL_FROM_ADDRESS, APP_URL) and deploy the edge functions (supabase functions deploy)..env.example and deploy it (Vercel works out of the box with vercel.json).It also covers checking that email works, updating to a new version, troubleshooting, and the third-party services Clientra uses.
src/
pages/ Route components (thin; logic lives in hooks/components)
components/ Feature components by domain, plus shadcn/ui in ui/
hooks/ useAuth, useWorkspaceUser (workspace-scoped writes), ...
lib/ PDF export, portal access tokens, invoice utils, ...
integrations/ Generated Supabase client and database types
supabase/
migrations/ SQL migrations, applied in timestamp order
functions/ Deno edge functions (_shared/ holds common helpers)
docs/ Product requirements, roadmap and feature designs
CLAUDE.md documents the architecture in more depth: the multi-tenant workspace model, token-based portal access and the security conventions every change must follow.
Contributions are welcome. Read CONTRIBUTING.md before opening a pull request, and see docs/ROADMAP.md for what's planned.
Please don't report vulnerabilities in public issues. See SECURITY.md.
Clientra is licensed under the GNU Affero General Public License v3.0. You may use, modify and self-host it freely. If you run a modified version as a service for others, you must make your modified source code available to its users.