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 ↗A responsive, gamified calculation-practice frontend for SBI Clerk, IBPS Clerk/CSA and IBPS RRB Office Assistant preparation.
Enter submit, Esc pause, Space resume)/practice/session?cat=tables&diff=medium&n=20) and results live at <setup>/result/[sessionId]src/components/ui + components.json)Data is stored in Upstash Redis (or in a local .data/ folder during development). Mock tests also need a Gemini API key.
npm install
npm run dev
Then open:
http://localhost:3000
Put a Gemini key in .env.local (see .env.example):
GEMINI_API_KEY=your-key
Run npm run dev, log in, then open Mock Tests, upload a prelims PDF, then generate as many tests as you like.
How it works:
src/app/api/mock/sources/route.ts). Every generated test follows the paper's exact pattern: the same sections, topics, question counts and order (paperPattern / buildMockTest in src/lib/mock-generator.ts).? in the middle, and an answer formula evaluated safely by src/lib/expression.ts. A template is used only if feeding it the original numbers gives the original answer. New numbers keep the original's digit count and roundness, the answer stays the same size, and wrong options sit as close to the answer as the original's did.GEMINI_API_KEYS, a key that runs out of quota or is revoked is rested and the work continues on the next key (src/lib/server/gemini-keys.ts). Vercel functions only accept 4.5 MB per request, so on Vercel the browser uploads the PDF to Vercel Blob first; the server reads it from there and deletes it. Connect a Blob store (Storage → Blob, choose Private) to the project for PDFs over 4 MB; both newer stores (BLOB_STORE_ID, signed in through Vercel OIDC) and older ones (BLOB_READ_WRITE_TOKEN) work.npm run lint
npx tsc --noEmit
npm run build
/login and /signup needs an account. src/proxy.ts redirects visitors without a session cookie; every API route checks the session itself (src/lib/server/auth.ts).src/lib/server/store.ts), so one account can never read another's.applySession in src/lib/stats.ts), so two devices don't overwrite each other.KV_REST_API_URL and KV_REST_API_TOKEN..data/ (git-ignored). To use the Vercel database locally instead, run vercel env pull .env.local.src/
app/ # Next.js routes
components/
app-shell.tsx # Responsive application shell
exam/ # IBPS / SBI-style mock test interface
session-engine.tsx # Core practice/game loop
session-route.tsx # Builds a session from its URL
session-setup.tsx # Practice configuration
ui/ # Local UI primitives
constants/ # Category definitions
context/ # Auth and stats providers (synced with the server)
lib/
question-generator.ts # Dynamic question generation + answer checking
session-url.ts # Session settings <-> URL query
gemini.ts # Server-only Gemini calls for mock tests
server/ # Auth, database access and API helpers (server only)
mock-generator.ts # Builds mock tests from parsed papers
stats.ts # Analytics, XP, levels, weak areas
types/ # Shared TypeScript models