Commit Graph
100 Commits
Author SHA1 Message Date
Hamza-Ayed 58c3c48f69 feat: STEM Virtual Lab, English TTS companion, dynamic textbooks and zero-demo video fallback 2026-09-03 17:37:15 +03:00
Hamza-Ayed 445a1aa0e3 Fix Flutter exam parsing, make exams tab dynamic from API, and add intelligent exam resolution to submitExam 2026-09-03 16:59:14 +03:00
Hamza-Ayed 0a61e32033 Enrich full codebase with architectural Arabic docblocks and synchronize database_schema.sql with live database 2026-09-03 16:51:29 +03:00
Hamza-Ayed 9624cfb4c8 Fix exams foreign key constraint on lesson_id by using NULL instead of 0 for unit exams 2026-09-03 16:46:17 +03:00
Hamza-Ayed be4fe3dabf Fix MySQL scope ENUM to unit_exam in AiQuestionBankGeneratorService and ExamController 2026-09-03 16:44:37 +03:00
Hamza-Ayed 8d7ffcf2eb Implement Server-Side AI Question Bank Generator, Adaptive Weakness Sampling 60/40, and Curriculum Studio One-Click Generation 2026-09-03 15:38:35 +03:00
Hamza-Ayed c9c03892d1 Implement multi-teacher video selector, in-app curriculum document reader, 15-question Unit 1 exam bank, and interactive science simulation engine 2026-09-03 15:16:46 +03:00
Hamza-Ayed 7e0aae023a Fix student_question_answers table creation, clean manifest duplicate units, and calibrate Socratic timeline seeking 2026-09-03 14:04:39 +03:00
Hamza-Ayed b41db82537 Fix curriculum grounding for Grade 10: replace calculus fallback with authentic Systems of Equations questions and add self-healing guard 2026-09-03 13:49:45 +03:00
Hamza-Ayed db9004c9ed Fix amberGold color token in AppColors and clean unused import 2026-09-03 13:31:46 +03:00
Hamza-Ayed 12049fd7da Complete Socratic adaptive exams in Flutter, Guardian WhatsApp alerts, and curriculum robustness 2026-09-03 10:14:34 +03:00
Hamza-Ayed ab482d85e4 Update Saqel Platform: 2026-09-02 09:06:45 2026-09-02 09:06:45 +03:00
Hamza-Ayed 8c62d81f04 Update Saqel Platform: 2026-09-02 08:59:54 2026-09-02 08:59:54 +03:00
Hamza-Ayed 5ecfaafa48 Update Saqel Platform: 2026-09-02 08:55:31 2026-09-02 08:55:32 +03:00
Hamza-Ayed a9b1819e9a Update Saqel Platform: 2026-09-02 08:47:33 2026-09-02 08:47:33 +03:00
Hamza-Ayed ff9fdbb24e Update Saqel Platform: 2026-09-02 08:20:41 2026-09-02 08:20:41 +03:00
Hamza-Ayed a4536395c5 Update Saqel Platform: 2026-09-02 08:12:57 2026-09-02 08:12:57 +03:00
Hamza-Ayed 36939a50c1 Update Saqel Platform: 2026-09-02 07:52:23 2026-09-02 07:52:24 +03:00
Hamza-Ayed 739f934a26 Update Saqel Platform: 2026-09-02 07:43:58 2026-09-02 07:43:58 +03:00
Hamza-Ayed 310d4b57e9 Update Saqel Platform: 2026-09-02 01:25:14 2026-09-02 01:25:14 +03:00
Hamza-Ayed a1c7029838 Update Saqel Platform: 2026-09-02 01:23:51 2026-09-02 01:23:51 +03:00
Hamza-Ayed f4ab43d49a Update Saqel Platform: 2026-09-02 00:55:56 2026-09-02 00:55:56 +03:00
Hamza-Ayed 1c0cd88a98 Fix RTL player time formatting and add interactive chalkboard notes 2026-08-31 18:01:26 +03:00
Hamza-Ayed a9b9c90d20 Guarantee 100% success response with Socratic checkpoints on /api/lessons/{id}/playback 2026-08-31 17:57:31 +03:00
Hamza-Ayed 7ab10209dc Fix UI overflows in SubjectHub/Grid and guarantee Socratic checkpoints response 2026-08-31 17:55:22 +03:00
Hamza-Ayed 43d6b88106 Fix lessons table SQL column name in getPlaybackData 2026-08-31 17:50:38 +03:00
Hamza-Ayed d8a50bb105 Enhance video playback cubit resilience and K-12 curriculum flow 2026-08-31 17:46:03 +03:00
Hamza-Ayed 78b703f625 Fix PHP 8 router parameter dispatching and lesson slug playback lookup 2026-08-31 17:45:27 +03:00
Hamza-Ayed ccf5f13a09 Update Saqel Platform: 2026-08-31 01:52:23 2026-08-31 01:52:24 +03:00
Hamza-Ayed 4e29915383 Update Saqel Platform: 2026-08-31 00:19:49 2026-08-31 00:19:49 +03:00
Hamza-Ayed c4c59bc828 Update Saqel Platform: 2026-08-29 22:41:36 2026-08-29 22:41:36 +03:00
Hamza-Ayed 051b9322f6 Update Saqel Platform: 2026-08-29 22:05:41 2026-08-29 22:05:41 +03:00
Hamza-Ayed d10e1c712c Update Saqel Platform: 2026-08-29 21:51:24 2026-08-29 21:51:24 +03:00
Hamza-Ayed 22568fe220 feat: Implement semantic video naming, MySQL database curriculum synchronization, and live two-way binding between filesystem and DB 2026-08-29 05:40:45 +03:00
Hamza-Ayed 9fc60b2cf5 fix: Isolate OTP keys and sessions per role in Redis so teacher and student logins on the same phone number never collide 2026-08-29 05:29:26 +03:00
Hamza-Ayed a8700c656f feat: Upgrade AI Video prompt to 10-15 minute deep comprehensive lesson with multiple examples and textbook integration 2026-08-29 05:24:10 +03:00
Hamza-Ayed 484ad9773d feat: Make copied video prompt direct, ultra-crisp with explicit 'اعمل فيديو' 5-bullet instructions 2026-08-29 05:22:17 +03:00
Hamza-Ayed 295e6e9b06 feat: Refine AI Voiceover prompt to produce direct spoken narration without director meta-cues 2026-08-29 05:20:43 +03:00
Hamza-Ayed 6b7ddf2ded feat: Optimize AI Video prompt generator to output ultra-concise, structured NotebookLM & video briefs 2026-08-29 05:18:12 +03:00
Hamza-Ayed 771ec6acc5 feat: Add collapsible curriculum accordion tree, direct video upload to platform, resilient AI asset generation with smart synthesis fallback, and ingest Physics Unit 2 2026-08-29 05:13:47 +03:00
Hamza-Ayed 4e047ee8f2 feat: Ingest complete Grade 10 Physics Unit 1 (Vectors) with full experiments, scalar/vector analysis, math products, enrichment, and international questions 2026-08-29 05:06:12 +03:00
Hamza-Ayed 9e276d6de6 feat: Normalize Grade 10 subjects in manifest with Arabic & English names (English, Math, Physics) 2026-08-29 04:58:04 +03:00
Hamza-Ayed 439572453f feat: Ingest complete Grade 10 Math textbook (Units 1-4) with semantic lesson naming, clean file hierarchy, and AI Video prompt generator 2026-08-29 04:53:45 +03:00
Hamza-Ayed 5b58ead215 feat: Ingest authentic Grade 10 Math Unit 3 (Trigonometry) with full polar system, unit circle, graph analysis, equations, and exam 2026-08-29 04:46:58 +03:00
Hamza-Ayed 8cbb87cb51 feat: Ingest authentic Grade 10 Math Unit 2 (Circle) with full theorems, LaTeX proofs, exercises, and exam 2026-08-29 04:43:18 +03:00
Hamza-Ayed 8230b42ac1 feat: Ingest complete 30 pages of Math Unit 1 (Equations) with full exercises, GeoGebra lab, and exam 2026-08-29 04:38:35 +03:00
Hamza-Ayed eb94f6ff77 feat: Ingest authentic Grade 10 Math Unit 1 with complete LaTeX equations and full derivations 2026-08-29 03:32:37 +03:00
Hamza-Ayed 39cf087488 fix: Support array payload from Security::verifyJWT for student identity verification 2026-08-29 03:07:10 +03:00
Hamza-Ayed 6da006e154 fix: Eliminate PHP parse error in AuthController studentProfileSetup 2026-08-29 03:03:36 +03:00
Hamza-Ayed a8d0efbbea fix: Resolve getJSON method error in student national ID verification and enhance curriculum worker Gemini model handling 2026-08-29 03:00:06 +03:00
Hamza-Ayed 9a1cb3adfd feat: Add UI button to watch NotebookLM AI Video Summary in Student Portal if ai_video_url exists for the lesson 2026-08-29 02:55:07 +03:00
Hamza-Ayed c338deea5a fix: Add missing JS showSuccess and showError to StudentPortal fixing UI freeze during OTP 2026-08-29 02:45:10 +03:00
Hamza-Ayed 3d09b8235d fix: Run curriculum worker in true CLI background to prevent web server timeout at 20% 2026-08-29 02:29:55 +03:00
Hamza-Ayed 598467b58f Update Saqel Platform: 2026-08-29 02:03:07 2026-08-29 02:03:07 +03:00
Hamza-Ayed 135a379b32 feat: Update Curriculum Studio with AI Assets panel to manually generate and input NotebookLM assets 2026-08-29 02:01:52 +03:00
Hamza-Ayed 074c08fc6f feat: Add AiLessonEnhancerService to automatically generate NotebookLM-style cheat sheets and quizzes 2026-08-29 01:26:25 +03:00
Hamza-Ayed d4379bf0d3 feat: Add cheat_sheet and socratic_quiz columns to lessons for automated AI curriculum generation 2026-08-29 01:15:26 +03:00
Hamza-Ayed 728f82181b feat: Add AiVideoGeneratorService for automated lively video script generation 2026-08-29 00:50:53 +03:00
Hamza-Ayed 294a60ecdb feat: Add migration script to apply or refresh database schema 2026-08-29 00:28:46 +03:00
Hamza-Ayed b3f70193a3 feat: Prepare DB architecture for AI multimedia ecosystem
- Add ai_podcast_url and ai_video_url to lessons for NotebookLM integration
- Add markdown_content to lessons to store extracted PDF curriculum directly in DB
- Create lesson_resources table for managing Worksheets, Summaries, and Books PDFs
2026-08-29 00:22:04 +03:00
Hamza-Ayed 03039a9611 fix: Strip markdown fences from Gemini JSON response to fix PDF curriculum extraction 2026-08-29 00:14:43 +03:00
Hamza-Ayed 5901329ef2 feat: Implement National ID sub-account login flow for students
- Updates verifyOtp to return identity_token for students instead of auto-login
- Adds verifyNationalId API endpoint to select or create a student profile under a single phone number
- Allows multiple students per guardian phone number
2026-08-29 00:10:04 +03:00
Hamza-Ayed 731194cba0 fix: multi-child demo linking in Guardian portal 2026-08-28 23:18:18 +03:00
Hamza-Ayed 8aab91c77f feat: Connect Guardian portal to real student mastery tracking
- Add GuardianController API endpoint to fetch student progress, readiness, and weakness gap logs.
- Add dynamic JS logic to GuardianPortal.php to replace static mockups.
- Connect Exam AI diagnostics (weaknesses, socratic checks) directly to the parent's dashboard view.
2026-08-28 23:17:14 +03:00
Hamza-Ayed a18d19588d feat: add unified print utility for students (StepLab & Exams) 2026-08-28 23:11:55 +03:00
Hamza-Ayed 1401db11d0 fix: 4 critical bugs — worker argv, student dashboard visibility, teacher onboarding flow, password validation 2026-08-28 23:08:15 +03:00
Hamza-Ayed abe862f04d Update Saqel Platform: 2026-08-28 18:21:58 2026-08-28 18:21:58 +03:00
Hamza-Ayed 2c529c579c Update Saqel Platform: 2026-08-28 18:13:52 2026-08-28 18:13:52 +03:00
Hamza-Ayed 6c8cb53af0 Update Saqel Platform: 2026-08-28 18:08:03 2026-08-28 18:08:03 +03:00
Hamza-Ayed 597ef1809d Update Saqel Platform: 2026-08-28 16:42:38 2026-08-28 16:42:38 +03:00
Hamza-Ayed cdcfa71c96 Update Saqel Platform: 2026-08-28 16:40:48 2026-08-28 16:40:48 +03:00
Hamza-Ayed f941c53035 Update Saqel Platform: 2026-08-28 16:36:22 2026-08-28 16:36:22 +03:00
Hamza-Ayed a20866eec8 Update Saqel Platform: 2026-08-28 16:30:12 2026-08-28 16:30:12 +03:00
Hamza-Ayed fe5a71bcad Update Saqel Platform: 2026-08-28 16:24:59 2026-08-28 16:24:59 +03:00
Hamza-Ayed ca0e18990e Update Saqel Platform: 2026-08-28 16:18:12 2026-08-28 16:18:12 +03:00
Hamza-Ayed 39c1e14232 Update Saqel Platform: 2026-08-28 16:06:52 2026-08-28 16:06:53 +03:00
Hamza-Ayed e6fd319ff4 Update Saqel Platform: 2026-08-28 15:55:08 2026-08-28 15:55:09 +03:00
Hamza-Ayed 86bdee399d Update Saqel Platform: 2026-08-28 15:41:53 2026-08-28 15:41:53 +03:00
Hamza-Ayed 974de0a641 Update Saqel Platform: 2026-08-28 15:39:16 2026-08-28 15:39:16 +03:00
Hamza-Ayed 2bcf2d2ba2 Update Saqel Platform: 2026-08-28 15:34:26 2026-08-28 15:34:26 +03:00
Hamza-Ayed d97a98abdb Update Saqel Platform: 2026-08-28 15:28:24 2026-08-28 15:28:24 +03:00
Hamza-Ayed 070e80ea30 Update Saqel Platform: 2026-08-28 15:19:58 2026-08-28 15:19:58 +03:00
Hamza-Ayed 06461635bf Update Saqel Platform: 2026-08-28 15:13:58 2026-08-28 15:13:58 +03:00
Hamza-Ayed 1c39d4c9cb Update Saqel Platform: 2026-08-28 15:11:34 2026-08-28 15:11:34 +03:00
Hamza-Ayed 710695b50b Update Saqel Platform: 2026-08-28 15:04:45 2026-08-28 15:04:45 +03:00
Hamza-Ayed 82170b4190 Update Saqel Platform: 2026-08-28 05:00:19 2026-08-28 05:00:19 +03:00
Hamza-Ayed 4991d50508 Update Saqel Platform: 2026-08-28 04:58:01 2026-08-28 04:58:01 +03:00
Hamza-Ayed 8b09ab767b Update Saqel Platform: 2026-08-28 04:49:19 2026-08-28 04:49:19 +03:00
Hamza-Ayed 8d22e78821 Update Saqel Platform: 2026-08-28 04:45:18 2026-08-28 04:45:18 +03:00
Hamza-Ayed cad7b7aa2b Update Saqel Platform: 2026-08-28 04:39:37 2026-08-28 04:39:37 +03:00
Hamza-Ayed eaf90d8c93 Auto purge cached session from localStorage when user is invalidated or DB reset 2026-08-28 04:35:00 +03:00
Hamza-Ayed 1d6ba50b21 Use CREATE TABLE IF NOT EXISTS and full DROP coverage in database_schema.sql 2026-08-28 04:29:47 +03:00
Hamza-Ayed 62ab0ab9a0 Update DROP TABLE order to ensure clean execution in migrate.php 2026-08-28 04:26:20 +03:00
Hamza-Ayed 6e0e07e17f Update Saqel Platform: 2026-08-28 04:23:13 2026-08-28 04:23:13 +03:00
Hamza-Ayed 21d2ed704d Update Saqel Platform: 2026-08-28 04:19:47 2026-08-28 04:19:47 +03:00
Hamza-Ayed 17a22c6985 fix: populate questions and options tables, scale AI chapters/checkpoints to video duration, open student lesson discovery 2026-08-28 04:14:16 +03:00
Hamza-Ayed dc2ebb108c feat: Dynamic student lesson discovery, lesson selector carousel, and live Socratic checkpoint streaming 2026-08-28 04:08:04 +03:00
Hamza-Ayed ab52d44c94 fix: Auto-seed official subjects table to satisfy foreign key constraints on courses creation 2026-08-28 04:03:01 +03:00
Hamza-Ayed d82d5a9ab9 fix: Add explicit Request properties and AllowDynamicProperties attribute to eliminate PHP 8.2 deprecation output 2026-08-28 04:01:32 +03:00
Hamza-Ayed 01d905f4da fix: Align exams creator_type enum to ai_adaptive and add fault-tolerant checkpoint generation 2026-08-28 02:54:14 +03:00