Files
learning-platform/docs/implementation-plan.md
RaymondVerhoef 07af2783dc
All checks were successful
On Push to Main / test (push) Successful in 1m33s
On Push to Main / publish (push) Successful in 1m31s
On Push to Main / deploy-dev (push) Successful in 2m3s
Add comprehensive documentation for key organizational aspects
- Introduced "Pension Scheme & Benefits" detailing secondary employment benefits and pension specifics.
- Created "Roles & Accountabilities" outlining the Holacracy role structure and responsibilities within Respellion.
- Added "Security" section covering GDPR compliance and workplace safety protocols.
- Established "Spending and Contracting" policy detailing expense categories and submission processes.
- Documented "Who We Are" to define Respellion's identity, services, and operational model under Holacracy and ISO 9001.
2026-05-27 08:24:56 +02:00

3.0 KiB

Implementation status & maintenance guide

The platform is fully implemented and deployed. This document replaces the original phased build plan (which targeted a Next.js + Qdrant architecture that was never shipped). It describes what exists today and where to work.


Build status

Area Status Where it lives
Auth & onboarding shipped src/store/AppContext.jsx, src/pages/Login.jsx, src/pages/Onboarding.jsx
Knowledge ingestion shipped src/lib/extractionPipeline.js, src/components/admin/UploadZone.jsx
Knowledge graph (view/edit) shipped src/components/admin/KnowledgeGraph.jsx (D3)
Learning content generation shipped src/lib/learningService.js (article/slides/infographic)
Micro-learnings shipped src/lib/microLearningService.js, src/components/micro_learning/
Weekly test shipped src/lib/testService.js, src/pages/Testen.jsx
Curriculum (26-week, per-user) shipped src/lib/curriculumService.js, src/components/admin/CurriculumManager.jsx
R42 chatbot shipped src/components/chat/, src/lib/kbStore.js, src/lib/retrieval.js
Gamification shipped src/pages/Leaderboard.jsx, leaderboard collection
Admin panel shipped src/pages/Admin/index.jsx (+ src/components/admin/)
AI wrapper (tiers/retry/telemetry) shipped src/lib/llm.js, src/lib/llmRetry.js, src/lib/llmSchemas.js, src/lib/llmTools.js
Deployment (Docker/Caddy/Ansible) shipped Dockerfile, Caddyfile, docker-compose.yml, infra/

Where to make changes

  • New PocketBase field/collection: add a migration in pb_migrations/ (follow the existing JS migration style) and mirror it in scripts/setup-pb-collections.mjs. Then add async helpers in src/lib/db.js.
  • New AI capability: add a tool in src/lib/llmTools.js, a Zod schema in src/lib/llmSchemas.js (register it in toolSchemaRegistry), and call it through callLLM. Never hit /api/anthropic directly.
  • New screen: add a page under src/pages/, route it in src/App.jsx, and gate it with ProtectedRoute (which also enforces curriculum enrollment).
  • New admin tool: add a tab in src/pages/Admin/index.jsx and a panel under src/components/admin/.

Verification before shipping

npm test          # Vitest unit tests (lib services)
npm run lint      # ESLint
npm run build     # production build to dist/

For UI/feature correctness, run the app against a local PocketBase (npm run dev + ./pocketbase.exe serve) and exercise the flow in the browser.


Constraints (see CLAUDE.md / PROTECTED.md)

  • Do not edit stylesheet.css or the deployment files (Dockerfile, Caddyfile, docker-compose.yml, infra/, .github/workflows/) without a request.
  • Do not re-enable PocketBase auto-cancellation.
  • Do not re-add the podcast content type or the reflection_prompt micro-learning.
  • Ignore the abandoned /app Next.js scaffolding.