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.