Synaplan
开源 AI 软件平台,面向企业:自托管 AI 代理,符合 GDPR 的聊天机器人小部件,RAG 知识库,WhatsApp 与 Outlook AI,MCP,多模型路由。支持 Docker、Kubernetes 或在 Germ 托管。
AI 翻译
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证This is a startup which can helps creators , vendors etc to manage their calendar and payement history and get checked with their customers along with it prevent the double bookings
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗Bayana is an advance-booking platform for independent service providers. A vendor publishes a page at bayana.in/<slug>; a customer picks a service and time, verifies their email, accepts the terms and pays an advance; both sides see the booking and payment state. The full specification is in docs/SPEC.md, and current defects are in docs/AUDIT.md.
You need Node 22, pnpm 10 (corepack enable), Git and Docker Desktop running. Keep the repository outside OneDrive (for example C:\dev\bayana); synced folders cause EPERM/EBUSY errors and slow builds.
pnpm.cmd install # dependencies
pnpm.cmd db:up # PostgreSQL 16 (port 5433) and Mailpit (SMTP 1025, inbox http://localhost:8025)
pnpm.cmd setup:env # creates apps/api/.env and apps/web/.env.local if missing; never overwrites; lists anything still to fill in
pnpm.cmd db:create # creates bayana_dev and bayana_test if they do not exist
pnpm.cmd db:migrate # lists pending migrations, then applies them (refuses unless the database name ends in _dev)
pnpm.cmd dev # web on http://localhost:3000, API on http://localhost:4000
If anything fails, run pnpm.cmd run doctor (with run: plain pnpm doctor is a built-in pnpm command). It checks Node and pnpm, the env files (by variable name only), the database and its migrations, and the ports, and prints the fix for each failed check. Env errors at startup name the variable, the allowed values and the file to edit.
Back up before migrating a database that holds data you care about (> redirection in Windows PowerShell corrupts binary dumps, so copy the file out of the container):
docker exec bayana-postgres-1 pg_dump -U bayana -Fc -f /tmp/bayana_dev.dump bayana_dev
docker cp bayana-postgres-1:/tmp/bayana_dev.dump backups\bayana_dev.dump
Optional: pnpm.cmd seed:dev loads development-only sample data.
Stop with Ctrl+C, then docker compose stop. Never use docker compose down -v, because it deletes the database volume.
| Command | What it does |
|---|---|
pnpm.cmd db:up | Starts PostgreSQL and Mailpit |
pnpm.cmd setup:env | Creates missing env files from the examples (never overwrites) and lists variables still needing a value |
pnpm.cmd run doctor | Read-only health check of tools, env files, database, migrations and ports, with a fix per failure |
pnpm.cmd db:create | Creates the databases named by DATABASE_URL and DATABASE_URL_TEST if missing. Never drops anything |
pnpm.cmd db:migrate | Applies pending migrations over DATABASE_URL_DIRECT (falls back to DATABASE_URL outside production) |
pnpm.cmd db:migrate:test | Creates and migrates the _test database |
pnpm.cmd db:migrate:status | Prints the migration ledger with checksums |
pnpm.cmd seed:dev | Loads development-only sample data |
pnpm.cmd typecheck / lint / test / build | Quality gates. Run all four before every commit; CI runs the same |
Tests refuse to run unless NODE_ENV=test and DATABASE_URL_TEST names a database ending in _test. Migrations are forward-only, and an edited applied migration fails the runner.
Nothing is deployed yet. apps/api/Dockerfile builds a non-root production image from the repository root (docker build -f apps/api/Dockerfile .). The API must start with NODE_ENV=production, and production requires WEB_ORIGINS, DATABASE_URL, DATABASE_URL_DIRECT, SESSION_SECRET, OTP_PEPPER, SMTP_URL and EMAIL_FROM. PAYMENT_MODE=live is refused unless LIVE_PAYMENTS_ACK=yes is also set in production.