Synaplan
开源 AI 软件平台,面向企业:自托管 AI 代理,符合 GDPR 的聊天机器人小部件,RAG 知识库,WhatsApp 与 Outlook AI,MCP,多模型路由。支持 Docker、Kubernetes 或在 Germ 托管。
AI 翻译
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
A working multi-tenant SaaS platform for Kenyan SMEs: CRM, M-Pesa payment automation, SMS/WhatsApp customer touchpoints, and automatic Day 1/3/7 follow-ups — all in one dashboard.查看完整 README ↗A working multi-tenant SaaS platform for Kenyan SMEs: CRM, M-Pesa payment automation, SMS/WhatsApp customer touchpoints, and automatic Day 1/3/7 follow-ups — all in one dashboard.
public/ — the frontend (static HTML/CSS/JS, no build step)
index.html — marketing/landing pageadmin.html — your super-admin panel (add clients, see revenue, configure integrations)dashboard.html — what each client sees (their CRM, transactions, follow-ups)portal.html — the public payment page clients share with their own customersjs/api.js — shared helper that talks to the backendserver/ — the Node.js/Express backend (JSON-file database, no separate DB server needed)
routes/ — API endpoints (auth, clients, transactions, contacts, followups, settings)lib/ — M-Pesa Daraja, Africa's Talking SMS, JWT auth, JSON storagecron/followups.js — background job that sends due follow-up SMS every 15 minutesdata/db.json — the database file (created automatically, not committed to git)Everything in this repo except:
node_modules/ (already gitignored — installed fresh on the server).env (already gitignored — your real secrets live only on the server)server/data/db.json (already gitignored — this is your live business data, not source code)In short: just commit and push normally. The .gitignore already keeps secrets and data out.
Truehost (cPanel) hosting needs three things this repo doesn't include by default:
git clone your repo directly on the server (if Truehost gives you SSH/git access), or zip the repo and upload via cPanel File Manager, then extract it into your app's folder.node_modules/ — run npm install on the server after upload (don't upload your local node_modules, it's gitignored and platform-specific anyway)..env file — create this directly on the server (cPanel File Manager → create file .env in the project root, or via SSH). Never commit this file. Use .env.example as the template.automate-ke (a folder under your account)server/index.js.env file — Truehost's panel lets you add them directly, or you can create a real .env file in the app folder if your setup doesn't expose this panel):
PORT=<the port Truehost assigns — leave default if shown>
JWT_SECRET=<a long random string — generate one, don't reuse the example>
ADMIN_PASSWORD=<your real admin password>
APP_URL=https://yourdomain.co.ke
MPESA_ENV=production
MPESA_CONSUMER_KEY=<from developer.safaricom.co.ke>
MPESA_CONSUMER_SECRET=<from developer.safaricom.co.ke>
MPESA_SHORTCODE=<your Paybill/Till number>
MPESA_PASSKEY=<from Safaricom Daraja portal>
MPESA_CALLBACK_URL=https://yourdomain.co.ke/api/transactions/mpesa/callback
AT_ENV=production
AT_API_KEY=<from africastalking.com>
AT_USERNAME=<your AT username>
AT_SENDER_ID=AutomateKE
You can leave the MPESA_* and AT_* variables empty at first — the app runs fine without them (payments are recorded as "simulated" and SMS sending is silently skipped) so you can demo the platform before signing up for real credentials.npm install inside the app's virtual environment)./admin.html and log in with the ADMIN_PASSWORD you set.npm install
cp .env.example .env # then fill in JWT_SECRET and ADMIN_PASSWORD at minimum
npm run dev
Visit http://localhost:4000. Default admin password (until you change it via the Settings page) is whatever you set as ADMIN_PASSWORD in .env.
/admin.html and add a client business — this creates their dashboard login and a unique payment-portal link./dashboard.html) and login, plus their portal link (/portal.html?key=...) to share with their own customers.server/cron/followups.js.wa.me click-to-chat links (one tap opens WhatsApp with a pre-filled message). A fully automated WhatsApp bot requires Meta Business verification for the WhatsApp Cloud API — a future upgrade, not implemented here.