尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗The web app for FocusFlow, a learning and assessment platform. Anyone can turn their own material (PDF, PowerPoint, YouTube videos, links) into a course of short units that learners finish one at a time. Lecturers and schools can add unit quizzes and final exams, invite a class, and see how each student is doing.
This repository is the Nuxt frontend. The backend is the Go service in focusflow-api.
As a creator
As a learner
In an institution
As an admin
pdfjs-dist to render PDF pages, markdown-it for lesson textThe browser never calls the API directly. Every request goes to a Nuxt server route in server/api/*, and those routes call the API through one helper, server/util/api.ts (apiFetch):
browser -> Nuxt server route (server/api/*) -> apiFetch -> FocusFlow API
apiFetch forwards only the ff_session cookie and copies the API's Set-Cookie back, so the httpOnly session cookie lives on the app's own domain.app/pages routes: /learn (course builder and learning), /institutions,
/admin, /certificate/[code], /join/[code], auth pages
app/components UI building blocks (components/ui) and feature components
(components/learn: builder steps, slide and PDF viewers,
quiz editor and import)
app/composables data fetching and state per feature
server/api proxy routes to the API
server/util/api.ts apiFetch
You need Node 22 and pnpm, and a running FocusFlow API (it can run with AI_PROVIDER=fake, so no AI keys are needed).
pnpm install
cp .env.example .env # NUXT_API_URL=http://localhost:8091
pnpm dev # http://localhost:3000
Build for production:
pnpm build
pnpm preview
FocusFlow is in early use. The course builder, quizzes, slides, institutions and plans work in production. Not built yet: reporting a course and payments.
GNU Affero General Public License v3.0. You can use, study, change and share this code. If you run a changed version for other people over a network, you must publish your changes under the same license.
Built by Mobarak Kuol Louis, Software Engineer, Kigali.