shiny-build

byQuintin Jeremy Mellem

build me a website

HomePractice
Home

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirement Document
Page 1 of 6

System Requirements Document

Project Name: Thinkr - CAPS Teacher Materials Platform

Introduction

Thinkr is a web-based educational platform designed to provide South African educators and students with access to CAPS-aligned teaching resources. The platform supports interactive teaching sequences, student-driven learning, and offline functionality. It is compliant with POPIA (Protection of Personal Information Act) and tailored for educational use in South Africa.

System Overview

Thinkr aims to bridge the gap between educators and students by offering a comprehensive suite of tools for teaching and learning. The platform includes features for teachers to manage lessons, create offline bundles, and track progress, while students can access lessons on demand, interact with teaching sequences, and practice their understanding through quizzes. The system ensures privacy compliance and local data storage, making it suitable for South African classrooms.

Functional Requirements

Page 2 of 6

Teacher Features

  • As a Teacher, I should be able to log in securely using a demo token.
  • As a Teacher, I should be able to filter teaching materials by grade, subject, term, and phase.
  • As a Teacher, I should be able to view detailed information about teaching nodes, including learning outcomes, strategies, misconceptions, assessments, and answer keys.
  • As a Teacher, I should be able to export node content as Markdown for offline use.
  • As a Teacher, I should be able to create offline bundles by selecting grades and subjects.
  • As a Teacher, I should be able to add teaching nodes to offline bundles.

Student Features

  • As a Student, I should be able to browse available lessons by grade, subject, and topic.
  • As a Student, I should be able to access interactive lessons with voice-driven teaching sequences and visual aids.
  • As a Student, I should be able to practice my understanding through quizzes with instant feedback.
  • As a Student, I should be able to track my progress locally without sharing personal data.
  • As a Student, I should be able to consent to local data storage for progress tracking.

User Personas

Teacher

  • Role: Educator
  • Goals: Access CAPS-aligned teaching materials, create offline bundles, and manage classroom lessons.
  • Needs: Secure login, detailed teaching resources, and offline functionality.

Student

  • Role: Learner
  • Goals: Access lessons on demand, interact with teaching sequences, and practice understanding.
  • Needs: Easy navigation, interactive lessons, and progress tracking.
Page 3 of 6

Visuals Colors and Theme

Color Palette

  • primary: #1e40af (Deep Indigo)
  • primary_light: #3b82f6 (Bright Blue)
  • secondary: #64748b (Slate Gray)
  • accent: #f43f5e (Vivid Coral)
  • highlight: #f59e0b (Amber Gold)
  • bg: #f8fafc (Soft White)
  • surface: rgba(255, 255, 255, 0.8) (Translucent White)
  • text: #1e293b (Charcoal)
  • text_muted: #94a3b8 (Muted Gray)
  • border: rgba(100, 116, 139, 0.2) (Subtle Gray)

Signature Design Concept

Page 4 of 6

Interactive Classroom Dashboard

The homepage will feature an Interactive Classroom Dashboard designed to captivate both teachers and students. The dashboard will include:

  • Dynamic Navigation: Sidebar navigation for Grades, Subjects, and Topics that activates based on user selection.
  • Interactive Lesson Cards: Each lesson card will "flip" when hovered, revealing metadata like grade, term, and subject.
  • Visual Sync Zone: A central teaching area with SVG animations that dynamically illustrate concepts (e.g., fractions dividing into equal parts).
  • Progress Tracker: A circular progress bar that fills as students complete lessons and quizzes.
  • Micro-Interactions: Buttons and cards will have spring physics animations using framer-motion for a playful yet professional feel.

Libraries:

  • @react-three/fiber + @react-three/drei for 3D elements in the Visual Sync Zone.
  • framer-motion for spring physics and hover animations.
  • gsap for scroll-triggered transitions.

Interaction Model & Motion Direction

Landing Page Interaction Model: Parallax

The landing page will use a parallax interaction model:

  • Layers of educational icons (books, pencils, chalkboards) will move at different speeds as users scroll.
  • Real content like lesson cards and filters will scroll naturally.
  • Hover effects will highlight interactive elements, such as lesson cards and buttons.

Internal Pages Interaction Model: Animated

Internal pages (e.g., dashboard, lesson detail, practice) will feature:

  • Scroll-triggered reveals for sections.
  • Hover transitions for buttons and cards.
  • Spring physics for interactive elements.
Page 5 of 6

Non-Functional Requirements

  1. Performance: The platform must load within 3 seconds on standard broadband connections.
  2. Scalability: Support up to 10,000 concurrent users.
  3. Accessibility: Ensure WCAG 2.1 compliance for visually impaired users.
  4. Security: Token-based authentication and HTTPS for secure communication.
  5. Privacy: Comply with POPIA regulations for local data storage.

Tech Stack

Frontend

  • React for Web
  • HTML/CSS for responsive design
  • framer-motion for animations
  • @react-three/fiber + @react-three/drei for 3D elements

Backend

  • FastAPI for API endpoints
  • Python for backend logic

Database

  • MongoDB for storing teaching nodes and metadata
  • LocalStorage for offline progress tracking
Page 6 of 6

AI Tools

  • GPT 5.4 for generating interactive teaching content
  • Litellm for LLM routing

Orchestration

  • Docker for local development
  • Kubernetes for deployment

Assumptions and Constraints

  1. The platform will only support English content initially.
  2. Offline bundles will be stored locally and require manual download.
  3. Access to the platform is restricted to users with a valid demo token.

Glossary

  • CAPS: Curriculum and Assessment Policy Statement, the South African educational framework.
  • POPIA: Protection of Personal Information Act, ensuring privacy compliance.
  • Teaching Node: A unit of teaching material, including strategies, outcomes, and assessments.
  • Offline Bundle: A downloadable package of teaching nodes for offline use.
Home design preview
Home: View Platform
About: Learn Features
Services: View Curriculum
Home: Select Grade
Home: Select Topic
Teaching: Preview Lesson
Teaching: Skip Steps
Practice: Review Questions
Privacy: Review Compliance
Contact: Request Demo