Synaplan
開源 AI 平台,供企業使用:自行託管的 AI 代理、符合 GDPR 的聊天機器人小工具、RAG 知識庫、WhatsApp 與 Outlook AI、MCP、多模型路由。Docker、Kubernetes 或託管於 Germ
AI 翻譯
尚未收集儲存庫資訊。
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗Monorepo with two independently deployable Next.js apps:
| Folder | Purpose | Vercel Root Directory | Local dev port |
|---|---|---|---|
private/ | Internal dashboard | private | 3000 |
public/ | Member-facing page | public | 3001 |
Each app has its own package.json, lockfile and node_modules, so each Vercel
project only installs and builds its own folder.
npm run install:all # install deps for both apps
npm run dev:private # http://localhost:3000
npm run dev:public # http://localhost:3001
Create two Vercel projects from this repository and set Settings → Build and
Deployment → Root Directory to private for one and public for the other.
Framework preset: Next.js (auto-detected).
Certificates are designed in the private dashboard (Certificates page) and downloaded by members from the public site.
private/.env.local and public/.env.local:
DATABASE_URL=postgresql://...
(on Vercel, set DATABASE_URL on both projects; optionally set
NEXT_PUBLIC_PUBLIC_SITE_URL on the private project to the public site's URL).npm --prefix private run db:migrate.Flow: dashboard → pick one of the 12 designs, edit title/wording/signatories,
publish → public / lists published certificates → /c/<slug> lets a visitor
type their name and download a PDF or PNG (rendered in the browser). Each
download increments a counter shown in the dashboard.
private/lib/certificate/ and public/lib/certificate/ are copies of the same
renderer; keep them in sync when changing a template.
Set DASHBOARD_PASSWORD on the private project (Vercel → Settings → Environment
Variables) and redeploy. Every page and /api/* route then requires signing in at
/login. With it unset the dashboard is open, which is fine for local development but
means anyone with the URL can read registrations and change data. Changing the password
signs everyone out.
| Variable | Project | Purpose |
|---|---|---|
DATABASE_URL | both | Neon connection string |
NEXT_PUBLIC_PUBLIC_SITE_URL | private | Public site address, used for dashboard links and the check-in QR code. Build-time: redeploy after changing it. |
DASHBOARD_PASSWORD | private | Enables the sign-in gate |