Skip to content

About

AI study and test-prep built on your own course material: generates quizzes and study guides from uploaded readings, and fills worksheets back into the original PDF/DOCX. Cloudflare Workers + D1 + React 19.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Study Forge

AI study and test-prep tooling that works off your own course material, not a generic question bank. Upload the readings, and it builds quizzes and study guides from them — or fills in an actual worksheet and hands the file back in its original format.

Live at study.ryantoolhub.org.

What it does

Worksheets. Upload a question sheet plus the readings it's drawn from, and Study Forge answers the questions and writes the answers back into the original PDF or DOCX, in the blanks where they belong, rather than emitting a separate answer list. It locates the answer regions on the page, handles scanned sheets through OCR, extracts tables, and re-checks its own filled page for answers dropped on the wrong row or run off the edge. A sheet that asks for slides instead ("make a slide for each of these") is planned out and returned as a .pptx.

Quizzes and study guides. Generated from uploaded materials, with attempts scored and tracked over time on a dashboard.

Google Classroom sync. A companion Chrome extension (extension/) picks up assignments as you view them in Classroom, drafts a starting-point answer for each, and can turn in the ones you've explicitly accepted in the review UI. It's built as an extension rather than a Classroom OAuth integration so it works against what you can already see in your own browser session.

Accounts. Multi-user with per-user material libraries, plus guest accounts for trying it without signing up.

Stack

React 19 + TypeScript + Vite on the front end; a Cloudflare Worker (worker/) on the back, with D1 for relational data and KV for uploaded originals. Document work is done in the Worker itself — pdf-lib and pdfjs-dist/unpdf for PDF, fflate for the DOCX and PPTX OOXML containers.

AI generation runs through a provider layer (worker/ai/) that fronts Cloudflare Workers AI, Anthropic, Gemini, Groq and OpenAI behind one interface, with automatic fallback to whichever keys are configured. Workers AI is the default so the public site runs without spending a paid key; paid providers stay admin-only unless PREMIUM_AI_PUBLIC is set.

Running it

npm install
npm run dev          # vite + worker locally
npm run build        # zips the extension, typechecks, builds
npm run lint

Local secrets go in .dev.vars (gitignored); in production they're set with wrangler secret put <NAME>. Every AI key is optional — whichever are present become available as providers. AUTH_SECRET is required and signs session cookies. See worker/env.ts for the full list of bindings and secrets.

Schema and migrations live in worker/db/.

About

AI study and test-prep built on your own course material: generates quizzes and study guides from uploaded readings, and fills worksheets back into the original PDF/DOCX. Cloudflare Workers + D1 + React 19.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages