尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗StitchSpeak translates knitting pattern PDFs using localized terminology and includes a Gemini-powered assistant.
npm install.env.example to .env and set VITE_GOOGLE_CLIENT_ID for Google sign-in.npm run devcd server && npm installGEMINI_API_KEY, OPENAI_API_KEY, and GOOGLE_CLIENT_ID (same value as VITE_GOOGLE_CLIENT_ID).npm run devAll assisted features run through the Express server. Translation, chat, glossary lookup, and grading use Gemini; tech editing uses OpenAI. No API keys are exposed to the browser.
Frontend hosting (Vercel or GitHub Pages) needs:
VITE_GOOGLE_CLIENT_IDVITE_API_URL pointing at the public Express server, for example https://your-api.up.railway.appServer hosting needs:
NODE_ENV=productionGEMINI_API_KEYOPENAI_API_KEYGOOGLE_CLIENT_ID matching the frontend client IDAUTH_SESSION_SECRET with a long random value for email-account sessionsAPP_URL with the canonical frontend origin used in verification/reset linksRESEND_API_KEY and AUTH_EMAIL_FROM for verification and password-reset deliveryFRONTEND_URL with every public frontend origin, comma-separatedDATA_DIR on a persistent volumeADMIN_EMAILS with the comma-separated Google accounts allowed to open /adminLEMON_SQUEEZY_API_KEY, LEMON_SQUEEZY_STORE_ID, LEMON_SQUEEZY_VARIANT_ID, and LEMON_SQUEEZY_WEBHOOK_SECRET when payments are liveBefore switching real users on:
order_created to /api/lemon-squeezy/webhook.npm run check in the repo root and npm run build in server/./data and set DATA_DIR=/data./health/deep; it verifies Gemini, OpenAI, OAuth,
payments, webhook configuration, and both persistent stores.credits.db and the pattern store into a non-production environment.Production health GitHub Actions workflow checks /health/deep every 15
minutes. Keep GitHub Actions failure notifications enabled for the repository./health/payments; verified webhook reconciliation
failures trigger alerts for one hour without taking the API offline.CI GitHub Actions workflow must pass before merging to main.StitchSpeak Credits.LEMON_SQUEEZY_STORE_ID and LEMON_SQUEEZY_VARIANT_ID.LEMON_SQUEEZY_API_KEY.https://your-api.example.com/api/lemon-squeezy/webhook.order_created and order_refunded.LEMON_SQUEEZY_WEBHOOK_SECRET.The server creates checkout links on demand using Lemon Squeezy's Checkouts API. It overrides the product price per credit pack and sends the signed-in user ID as checkout custom data. Credits are granted only when the verified order_created webhook arrives.
React 19, TypeScript, Vite, Tailwind CSS v4, Express, Google Gemini, OpenAI, Google Sign-In.