DeepSeek Harness Remote
DeepSeek Harness Remote 可将手机或另一台电脑与你运行 DeepSeek Harness 的电脑安全连接,随时随地继续你的工作,方便随时查看进度并继续工作。
AI 翻译
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗The marketing site for MeetingGuard: English at /, Spanish under /es/,
built as plain static files and hosted on Firebase Hosting.
Built with Next.js (static export), TypeScript, Tailwind CSS and Motion.
This is the first, limited release: three pages only, the landing page, the
privacy policy and the terms of service (each in English and Spanish). The
full site, with the feature, pricing, assistant, FAQ, blog and other pages,
is kept in Meeting_Guard_Web-Copy for a later release.
You need Node.js 22 or later.
npm install
npm run dev # live preview at http://localhost:3000 (Spanish at /es)
npm run build # writes the finished site to ./out
npm run preview # serves ./out at http://localhost:3000, like Firebase does
Almost everything you read on the site is in a few files. Each holds the English and the Spanish text side by side; change both.
| What | File |
|---|---|
| Header, footer, buttons, forms, home page sections, phone screens | src/lib/i18n.ts |
| The FAQ on the home page (5 questions) | src/content/faq.ts |
| Privacy policy and terms of service (English as approved, Spanish translation) | src/content/legal.ts |
| Facts used everywhere: store links, email, phone, company number, release months, ratings, form and analytics settings | src/lib/site.ts |
Writing rules from the brief: short, direct and friendly; plain punctuation (no
em dashes, ellipses or curly quotes); prices exactly as in the app; features
that are not shipped yet carry an "Available " label (set the months in
availability in src/lib/site.ts).
Spanish files are checked against English: if a translation is missing, the build stops with an error that names it.
src/views/ (the full site in Meeting_Guard_Web-Copy
has the pages of the later release).scripts/generate-routes.py and to PAGES in src/lib/routes.ts.python scripts/generate-routes.py; it writes the English and Spanish
route files.src/lib/i18n.ts, copy the es block, translate it, and add it to
dictionaries.Lang and LANGS in src/lib/routes.ts, with its URL
prefix in localize().en and es).src/app/(xx)/layout.tsx like src/app/(es)/layout.tsx, extend
scripts/generate-routes.py, and add the flag to
src/components/layout/LanguageSwitch.tsx.Phone screens are rebuilt in code from the app's real screens. When the real
screenshots are exported, put them in public/images/screens/ and pass them
to PhoneShot with its image prop (src/components/phone/PhoneShot.tsx).
The web agenda (milestones S3 to S6) lives in the same project with its own
layout: /app (Spanish /es/app). It is kept out of search engines. The
header's Sign in button leads to it, but until the agenda is connected to the
backend the button is shown disabled and says "coming soon"; set agendaOpen
in src/lib/site.ts to true to turn it on. Until then, open the agenda by
typing /app.
| Page | URL |
|---|---|
| Sign in (Google, or email and password, as in the app) | /app/sign-in |
| Agenda: day, week and month; meeting details; create, edit, move, cancel | /app |
| Tasks: by due date, overdue and done; quick capture; edit, complete, delete | /app/tasks |
| Account: plan, manage subscription in the store, sign out, delete account | /app/account |
| Guest invitation (no account needed): accept, decline, propose a time | /app/invite?t=<token> |
It reads and writes the app's own records in the app's Firebase project, live
both ways, under the same server rules. Set the values in .env.example (copy
it to .env.local) and build. Without them, it runs as a preview with sample
data kept in the browser, and a "Preview" label says so.
To turn it on: register a Web app in the Firebase console and copy its config;
add the site's domain under Authentication > Settings > Authorized domains; and
for Apple, add a Services ID to the Apple provider and set
NEXT_PUBLIC_APPLE_SIGN_IN=1.
Every read and write goes through src/lib/agenda/store.ts. Other files:
src/lib/agenda/firebase.ts.src/lib/agenda/records.ts,
following the app's src/core/types.ts.src/lib/agenda/recurrence.ts, following the app's
src/core/recurrence.ts.src/lib/agenda/validation.ts, following the
app's src/screens/meetings/meetingForm.ts.src/lib/agenda/plans.ts. In the app, plans differ only in AI
assistant requests, so nothing on the web agenda is locked.src/lib/agenda/i18n.ts.src/lib/agenda/capture.ts.Keep the first four in step with the app when its records change.
When the agenda moves to its own address (for example app.meetingguard.ai),
point that address at /app, and rewrite /invite/** to /app/invite for
the guest links; the guest page reads the token from either.
appStoreUrl in src/lib/site.ts (until it is set, the
App Store badge does nothing when clicked). The Google Play link is set./privacy-policy,
/terms-of-service; /privacy and /terms redirect there) match Play
Console, App Store Connect and the Meta app.functions/ and set formsEndpoint in src/lib/site.ts.gaMeasurementId in src/lib/site.ts; the consent banner
appears automatically once it is set.Every page is built as a folder with an index.html (/es/ is
es/index.html, /privacy-policy/ is privacy-policy/index.html), so the
host serves the files as they are. Addresses end with a slash; without it, the
server adds it.
npm run build # writes ./out, including .htaccess (from public/.htaccess)
Upload everything in ./out to public_html by FTP (show hidden files so
.htaccess goes too). public/.htaccess has the redirects from old URLs
(/privacy, /terms), the 404 page and the security headers.
npm run build
firebase hosting:channel:deploy preview # a preview link for review
firebase deploy --only hosting # live
firebase.json has the redirects from old URLs and the security headers for
the site paths (not /admin). Merge it with the existing project's
firebase.json, which also serves /admin.
functions/index.js receives the forms (this release uses the assistant
waitlist and the footer updates sign-up), writes them to Firestore (websiteForms) and emails support@ through
the Trigger Email extension (mail collection). Deploy it with
cd functions && npm install && firebase deploy --only functions:websiteForms.
Sent only after the visitor accepts the consent banner: badge_click (with
the store), waitlist_submit, updates_submit, scroll_75.