尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗Shared, editable, real-time Gantt roadmap and planning workspace for the Ynmo product team (Tifli · Plan/Warif/Sharjah · Daycare · AI squads). One static HTML file + Supabase. No build framework, no server to run.
| Live | https://ynmo-roadmap.vercel.app |
| Hosting | Vercel (auto-deploys main) |
| Backend | Supabase (Auth + Postgres + Realtime + four Edge Functions: notify-approval, weekly-draft, jira-sync, jira-search) |
| Stack | Vanilla JS (native ES modules, bundled by esbuild) + CSS, no framework, Supabase JS v2 (vendored) |
Plan features on a day-level timeline, assign people, track dependencies/milestones, keep an ideas board (Trello-style), plan a monthly deliverables board (one column per month, cards coloured by product, synced from the roadmap), plan two-week sprints as a document (pull each person's Jira tickets, export to Google Docs), build a per-product weekly executive report in one click from the sprint plan, the roadmap and the Monthly cards (carry-over tags and filters by person and points in Monthly; sprint item percentages that update the cards after a review), keep a Notion-style Monthly deliverables page (synced from the roadmap with editable percentages), share a read-only link with stakeholders, export the roadmap as a coloured PDF, and audit every change with undo. Access is by admin approval with Editor / Viewer roles. Planning side: Monthly cards with points per person (1 point = 4 hours, 40 a month, 2 per leave day), a Dashboard of capacity per track and person (part time, leave, leavers), monthly version history, Resources pop-up to rename, merge, set part time or mark someone as left, and Sprints checked against the plan with Jira links. Full product description: docs/BUSINESS.md.
git clone https://github.com/Asmaa-Mabrouk/ynmo-roadmap && cd ynmo-roadmap
npm install # esbuild + lint deps (dev only)
node build.mjs # src/ -> index.html (Node >= 18)
npx serve . # or: python3 -m http.server 3000
The app talks to the Supabase project configured in src/esm/core/supabase.js (publishable key only).
First-time backend setup: docs/DEPLOYMENT.md.
src/
index.template.html page shell ({{STYLES}}, {{SCRIPTS}} slots)
css/ base -> brand -> skin -> features
esm/ ES modules: core/ auth/ ui/ pages/ features/ app/ + main.js (see docs/ARCHITECTURE.md)
build.mjs esbuild bundle + CSS -> index.html (node build.mjs [--check])
lint.mjs module-graph lint (missing imports / undefined names)
index.html GENERATED deploy artifact (committed; Vercel serves it as-is)
vendor/supabase-js.js pinned, self-hosted client (no CDN => strict CSP, no supply-chain drift)
supabase/sql/*.sql numbered migrations, run in order (09 = Ynmo Flow tickets)
supabase/functions/ Edge Functions: notify-approval (email admins), weekly-draft (Gemini report wording), jira-sync (read-only Jira Cloud search), jira-search (find a ticket to link a sprint task)
tests/ Playwright E2E suite + in-browser fake Supabase
vercel.json security headers + CSP
docs/ BUSINESS, ARCHITECTURE, DATABASE, SECURITY, DEPLOYMENT, TESTING, CONTRIBUTING, CHANGELOG, LEDGER
src/. Never edit index.html by hand.node build.mjs and open index.html.tests/run_all.sh (build check, lint, every feature script, CSP check, 79 scenarios; about 12 minutes). See docs/TESTING.md.src/ and index.html; node build.mjs --check must pass. Push to main to deploy.