Synaplan
開源 AI 平台,供企業使用:自行託管的 AI 代理、符合 GDPR 的聊天機器人小工具、RAG 知識庫、WhatsApp 與 Outlook AI、MCP、多模型路由。Docker、Kubernetes 或託管於 Germ
AI 翻譯
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Apply karde bhai
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗A private job-tracking web app shared by three members: Anni (blue), Lukky (yellow) and Rishii (red). Screens: Login, Dashboard, All Jobs, Add Job, My Applications, Analytics.
Status: Phases 1 (secure login), 2 (Google Sheets data layer) and 3 (All Jobs, Add Job, My Applications) are implemented, and the live Google connection is verified for all three members. Phases 1-4 are done and Phase 5 (deployment) is complete: production is live at https://jobsbyarillabs.vercel.app (see docs/deployment). Work proceeds one phase at a time with explicit owner approval.
npm install
cp .env.example .env.local # add GOOGLE_* values for data routes; see docs/setup/README.md
npm run dev # http://localhost:3000
Without env vars, development uses documented prototype access codes and a dev-only session secret. Production refuses to start sessions without SESSION_SECRET and fails closed without access codes.
npm run dev, npm run build, npm start, npm run lint, npm run typecheck, npm test, npm run test:e2e, npm run test:e2e:isolated (browser workflow + responsive suites on an in-memory backend), npm run sheets:test-setup (prepare a disposable test spreadsheet).
assets/ – original reference screenshots and photos (never modified)public/assets/ – browser-served copies of the profile photossrc/app – pages and route handlers; src/components; src/lib (auth, validation); src/configtests/ – unit, integration, e2eAll data comes from the Google spreadsheet; an empty sheet shows an empty state with an Add New Job button, never sample data.
GET/POST /api/jobs, GET /api/applications, PUT /api/applications/[jobId], GET /api/sheets/status. Jobs are shared; each member has an independent application status. Identity always comes from the session. Without Google configuration these routes return a safe 503; there is no sample data. Details: architecture.md.
Access codes are verified on the server only. Sessions are signed, HTTP-only cookies; identity is always taken from the validated session, never from browser-supplied names or IDs. Never commit .env* files or service-account JSON.