subh05sus avatar

sparkmentis-fork

0 subscribers
TypeScriptHTMLJavaScript

Created Jul 2025

Live activities

We've enabled admin control for updating a course's main teacher directly within the 'Settings > Teachers' sheet, including handling the 'Unassigned Teacher' placeholder. Previously, this required using the bulk action under 'All courses'. The new picker allows selecting from current co-teachers and assistants or any other available teacher, with automatic handling of timetable class reassignment and change history logging. Fixing a bug

Performed a minor update to the README.md file to ensure the documentation remains accurate and up to date for project contributors and users. Updated README

Resolved a critical race condition in the question generation drain where asynchronous checkpoint writes were causing retries to fail instantly. Checkpoint operations are now properly chained and awaited, and empty checkpoints will correctly trigger a chunk loop restart rather than an immediate job failure. Additionally, improved error handling ensures actual underlying API errors are now properly captured, logged, and surfaced in job results. Race Conditions

We have officially retired the legacy per-school AI token quota system, making AI settings read-only and transitioning management to SparkMentis. This involved cleaning up legacy usage tracking and quota checks across 18+ API routes and several core libraries. The AI usage dashboard now displays real-time request counts sourced directly from our usage meter, simplifying administration. Cleanup in progress

We have introduced a robust system for tracking AI usage across all Gemini calls, allowing for granular monitoring per school, user, model, and feature. This update includes configurable AI policies that support warnings or usage blocks based on daily, weekly, or monthly thresholds. Additionally, we implemented several cost-saving optimizations, such as request caching and utilizing Gemini 'Flex' tier for non-urgent background tasks, to ensure more efficient AI operations without sacrificing quality. AI cost reduction

Resolved two key issues: sidebar scroll positions now persist across page navigations using sessionStorage, and several pages that were crashing due to unintended database client imports in browser code have been fixed by splitting logic into browser-safe modules. A new test suite was added to proactively block future database imports within client-side components to prevent regressions. Fixing the bugs

We have completed an audit to ensure consistency by enabling edit functionality for previously 'create-only' records, including unit tests, question banks, saved message replies, report-comment windows, and code exam groups. This update improves administrative flexibility by allowing teachers and admins to refine details like titles, descriptions, and scheduling configurations without needing to recreate entities. The update also introduces stricter validation on the backend to reject empty titles, ensuring higher data integrity. Quality of Life Improvements

This update fixes navigation issues in the code exams module by updating the breadcrumb generation logic to skip non-existent pages, ensuring a smoother user journey. Additionally, instructors can now edit code exam details (such as title, pass mark, and timing) directly, with robust validation and warnings when removing support for specific languages. Fixing things

We've disabled Turbopack's persistent build cache specifically on Vercel to resolve OOM (Out of Memory) errors during production builds. It turns out that restoring the large cached filesystem between deployments was exceeding the memory limits of our build environment. This change ensures stable deployments while maintaining build speed, and keeps the default caching behavior for other environments like Docker and EC2. Building on Vercel

Following feedback to reduce clutter, I've simplified the Attendance Report page by consolidating controls into a single, slim toolbar and organizing views into a segmented control. The layout now handles narrower screens gracefully without horizontal scrolling, and I've improved the Coverage view by grouping data by teacher. These changes make the report significantly more intuitive to navigate. Simplifying the UI

We've finalized a massive UI overhaul across the entire application, achieving 96% component compliance with our new Apple-inspired design system. Key improvements include replacing browser pop-ups with native-feeling sheets, adding global undo functionality for destructive actions like deleting announcements or meetings, and introducing refined loading states with custom button spinners. The update also standardizes typography and status colors to ensure high accessibility and visual consistency across all modules. UI Refresh

This release implements a comprehensive suite of features requested by the owner, including course deduplication, granular deadline extensions for coursework, bulk student excusals, and campus-aware teacher check-ins. We have also revamped the UI with new SparkMentor-inspired grey panels, fixed sidebar scrolling, and improved search responsiveness to ensure a smoother, more polished user experience. Hardworking developer

This release completes a comprehensive UI overhaul, adopting a consistent, Apple-inspired "glass" design language across settings, admin tools, and student dashboards. We have also introduced a new SparkMentor consent flow, streamlined navigation by renaming "Due" to "Assignments", and implemented crucial security fixes for tenant-based API routing. The platform is now more visually cohesive and secure, with all feature toggles and deployment configurations correctly synchronized. Revamp 4.5 Shipped

This update marks the finalization of the Revamp 4.2 release cycle (3a-3f), bringing a complete overhaul to system settings, AI prompt management, engagement tracking, and integration hubs. Key highlights include an iOS-inspired settings panel with atomic saves and undo functionality, an AI prompt editor with preview/test capabilities, and a new "Who's drifting" engagement tool for identifying at-risk students. We also hardened system security by restricting tenant-specific events and API guardrails to server-validated headers rather than relying on potentially forged caller inputs. Revamp 4.2 Reached Release 3f

This update introduces a new, unified settings-style profile system for students, teachers, and parents, featuring improved security, photo handling, and role-specific workflows. Alongside this, we have fully overhauled the payments system with enhanced batch and roster management, refined payment rules, and a robust data import tool to streamline administrative tasks. These comprehensive changes reflect our ongoing effort to improve both user experience and backend efficiency across the platform. Big changes incoming

This release delivers a comprehensive overhaul of the authentication flow, including a unified school-branded sign-in shell, improved device management with new-device alerts, and a streamlined sign-up process. We've also significantly hardened security by addressing webhook SSRF vulnerabilities, fixing payment gateway bypass risks, and implementing robust password-guessing protection. Additionally, Nginx has been tuned for high performance with HTTP/2 and persistent connections, ensuring a faster and more scalable experience for all users. Hardened security measures

This update introduces a robust blue/green deployment strategy on our EC2 infrastructure to ensure zero-downtime updates. By utilizing two independent slots behind an Nginx load balancer with graceful reloads and health checks, we can now deploy new versions while keeping existing traffic active. This setup also simplifies rollback processes and allows for individual instance management to maximize system stability. zero downtime deployment

We have significantly updated both the admin and teacher dashboards to improve usability and data visualization, implementing a new layout with Apple-inspired charts. Teacher dashboards now feature comprehensive pulse cards for student monitoring and attendance trends, while admin dashboards gain better visibility into batches and engagement metrics. To maintain performance, slow-loading sections now utilize deferred rendering via the /api/today endpoint. When you update the dashboard charts to look like Apple's health app

This update officially ships the Parent Portal (3.2) and related communication features (3.1) to the live environment. Key additions include a dedicated child hub for parents to track progress, book meetings, and manage enrollments via QR-coded invite slips, alongside an email hotfix to ensure reliable delivery of notifications. Parents can now receive real-time alerts for released marks and low-grade notifications, providing better transparency into student performance.

We've revamped our email dispatch logic to ensure notifications aren't dropped when multiple events occur in the same tick. React-based email templates are now sent individually with built-in retries to handle rate limits, while plain HTML/text emails continue to use batching for efficiency. This change fixes an issue where batching errors could inadvertently silence all emails in a chunk. Reliability improvements