Lexiverse
Lexiverse - AI contextual reading engine for English learners. Your next article is your next review.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Aplicație web în română care îl ghidează pe un inițiator de proiect civic prin 10 pași (context, teoria schimbării, organizare), cu ajutorul unui AI. La final rezultă o pagină publică a proiectului, iar proiectul se editează doar cu un link secret de editare (fără cont).
npm install
cp .env.example .env.local
npm run dev
Cu REPO=memory și AI_PROVIDER=fake (valorile din .env.example) aplicația merge fără nicio cheie: datele sunt ținute în memorie (se pierd la repornire), iar AI-ul este unul fals, cu răspunsuri fixe pentru teste. Deschide http://localhost:3000.
Variabile de mediu (vezi .env.example):
| Variabilă | Rol |
|---|---|
REPO | memory (local, teste) sau supabase (producție); în producția Vercel (VERCEL_ENV=production) aplicația refuză memory |
AI_PROVIDER | fake (local, teste) sau deepseek (producție) |
SUPABASE_URL, SUPABASE_SERVICE_ROLE_KEY | necesare când REPO=supabase |
DEEPSEEK_API_KEY, DEEPSEEK_MODEL, DEEPSEEK_BASE_URL | necesare când AI_PROVIDER=deepseek |
npm test # teste unitare și de componente (Vitest)
npx playwright install chromium # o singură dată
npx playwright test # test end-to-end (pornește singur serverul pe portul 3100, cu REPO=memory și AI_PROVIDER=fake)
supabase/migrations/0001_init.sql: fie lipește-o în SQL editor, fie rulează npx supabase db push (după npx supabase link). Migrarea creează tabelele, funcțiile hit_rate_limit, save_draft și publish_project și dă drepturi doar rolului service_role.Creează un proiect Vercel legat de repository-ul GitHub.
Adaugă variabilele de mediu de producție:
REPO=supabase
AI_PROVIDER=deepseek
SUPABASE_URL=<Project URL din Supabase>
SUPABASE_SERVICE_ROLE_KEY=<cheia service_role>
DEEPSEEK_API_KEY=<cheia DeepSeek>
DEEPSEEK_MODEL=deepseek-flash
DEEPSEEK_BASE_URL=https://api.deepseek.com
Fă deploy.
Jurnalele de cereri conțin linkuri de editare. Tokenul de editare face parte din URL (
/e/<token>,/api/e/<token>/…), deci apare în jurnalele Vercel (și ale oricărui proxy). Cine vede jurnalele poate edita proiectele: dă acces la jurnale doar celor care au nevoie.
Pune variabilele reale într-un .env.local local (necomis) și rulează:
npx tsx --env-file=.env.local scripts/smoke-repo.ts
npx tsx --env-file=.env.local scripts/smoke-ai.ts
Primul verifică scrierea și citirea în Supabase (inclusiv funcțiile save_draft și publish_project), al doilea un apel real către DeepSeek. Lansează aplicația doar dacă ambele trec.
smoke-repo lasă în bază un proiect numit „Smoke test”. Șterge-l de mână după verificare, de exemplu în SQL editor:
delete from projects where draft -> 'project' ->> 'name' = 'Smoke test';