Synaplan
開源 AI 平台,供企業使用:自行託管的 AI 代理、符合 GDPR 的聊天機器人小工具、RAG 知識庫、WhatsApp 與 Outlook AI、MCP、多模型路由。Docker、Kubernetes 或託管於 Germ
AI 翻譯
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Calculate the cost of bouquet using voice recognition and your own price list
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
A Progressive Web App for florists: dictate a bouquet, get its sale price.
See SPEC.md for requirements and decisions.
Current stage: core app (roadmap step 3): calculator with on-device Whisper, catalog, price table, settings.
• data/catalog-draft.xlsx — built-in catalog (names in he/ru/en, no prices). Edit it, then run npm run catalog.
• private/my-prices.xlsx — the price table used as default prices in the app
(npm run catalog builds them into src/data/catalog.json, which is public).
The folder itself (invoices, working copies) is git-ignored.檢視完整 README ↗A Progressive Web App for florists: dictate a bouquet, get its sale price. See SPEC.md for requirements and decisions.
Current stage: core app (roadmap step 3): calculator with on-device Whisper, catalog, price table, settings.
npm install
npm run dev # dev server
npm run build # type-check and production build (includes the service worker)
npm run preview # serve the production build on http://localhost:4173
npm run icons # regenerate PNG icons from public/favicon.svg
npm test # unit tests (phrase parsing, pricing)
npm run photos # generate missing catalog pictures (OpenAI; key in .env.local)
npm run photos:app # shrink generated pictures into public/photos/
npm run catalog # rebuild src/data/catalog.json from data/price-list.tsv
data/price-list.tsv — the built-in catalog with default prices: the Google Sheet
"Bouquet Calculator Prices" downloaded as TSV (Hebrew, Russian, English, Price, Bought as;
section rows Flowers / Roses / Greenery). Replace it and run npm run catalog; the result,
src/data/catalog.json, is public.data/catalog-ids.json — keeps each item's ID stable (Hebrew name → ID);
data/spoken-names.json — extra names people say out loud, per item ID.data/photo-prompts.xlsx — the picture for every price-list row and what to draw;
generated-photos/ (git-ignored) holds the generated originals.private/ — invoices and working copies, git-ignored.The app is published on GitHub Pages: https://bouquetprice.github.io/
(repository bouquetprice/bouquetprice.github.io, organization owned by the author's account)
Every push to main runs .github/workflows/deploy.yml: tests, build (at the site
root for a <owner>.github.io repository, otherwise under /<repository>/), deploy. Installed apps then show
"A new version is ready" and update when the florist taps it.
Microphone access requires HTTPS. For a quick check of unpublished changes, serve the build and open a temporary tunnel (free, no account; the link changes every time and app data is stored per address):
npm run build && npm run preview -- --port 4173
cloudflared tunnel --url http://localhost:4173
src/model/ — data model, pricing rules, phrase parsing (parseBouquet.ts), sound-alike matching, Excel.src/store/ — on-device storage (IndexedDB), photos, backup.src/speech/ — Whisper (on-device recognition) worker and client, audio recording, hints.src/screens/ — Calculator, Catalog, Prices (+ item editor), Settings (+ speech diagnostics).src/i18n/ — UI translations (English, Hebrew, Russian). Add a language by adding a file.src/platform.ts, src/pwaUpdate.ts — install hints, update prompt.