尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗The complete FLOW web app, installable as a Progressive Web App. All files must stay together at the repo root (they reference each other with relative paths) — do not nest them in a subfolder.
index.html — the app itself (points at the production Supabase
project siqntfkpdstikrqffmep). Built from src/ — do not edit it
directly: change the file in src/ and run node tools/build.js
(see src/README.md). Both are committed; the tests
fail if they ever differ.src/ — the source of index.html, one file per part of the app
(pages, modals, styles, and the JavaScript by area: sync, ROB,
planner, loadings, deals…). Not deployed.tools/build.js — joins src/ into index.html (plain Node, no
dependencies). Not deployed.manifest.json — PWA metadata (name, icons, theme color)service-worker.js — caches the app shell (network-first) and the
exact-version-pinned CDN libraries (cache-first) so the app can open
offline; Supabase calls and Google Fonts always go straight to the networkvercel.json — security headers (Content-Security-Policy etc.) and the
SPA rewriteicon-192.png, icon-512.png — app icons for install/home screensupabase_role_setup.sql — database setup to run in the Supabase SQL
Editor (roles).index.html, manifest.json,
service-worker.js, vercel.json, the icons — not src/ or tools/)
are the file set that should be mirrored into the
Android project's www/ folder (flow-apk-project-fixed/flow-apk/www/
in FLOW---ANDROID) so the two never drift out of sync. That copy is
NOT an offline fallback: the Android app loads the live deployed URL
via capacitor.config.ts (server.url), and Capacitor never falls
back to the bundled www/ when that URL is unreachable. Offline launch
relies on the service worker cache (app shell + pinned CDN libraries).vercel.json sets a Content-Security-Policy. Any NEW external origin
(a CDN, API, font or image host, iframe source) must be added to the
matching directive there (script-src, connect-src, frame-src…),
or the browser will block it. CDN libraries must use exact-version
URLs (e.g. @2.117.3, not @2) so they are cacheable offline;
supabase-js and EmailJS also carry SRI integrity hashes, which must
be recomputed when bumping their versions.Each nomination card has an IMO box and an MMSI box ("IMO Number / MMSI *" — at least one is wanted).
{{IMO}} and {{MMSI}}. The nomination and
cancellation e-mails list both when filled in.tests/ holds a browser test suite (Playwright, headless Chromium) that
loads index.html against a fake Supabase — the real project is never
contacted. See tests/README.md for what it covers and
how to run it: cd tests && npm ci && npx playwright install chromium && npm test..github/workflows/test.yml) runs it on every push and
pull request; a red X on a commit means a test failed (logs are attached to
the run).tests/, src/, tools/ and .github/ are development-only (and supabase/
is server code): .vercelignore and _config.yml keep them off the live site,
and they should not be copied into the Android www/ folder.