Nurfog and Qwen-Coder
9e57756528
feat: Monthly token limits per user
...
Database:
- Add monthly_token_limit and token_limit_reset_day to users table
- Create ai_usage_monthly view for current month usage
- Add check_token_limit() function to verify available tokens
- Add get_user_usage_stats() function for historical usage
API Endpoints:
- PUT /admin/users/{user_id}/token-limit - Set monthly limit
- GET /admin/users/{user_id}/token-usage - Get user's current usage
- GET /admin/users/{user_id}/token-limit/check - Check if user has tokens
Features:
- Default limit: 100,000 tokens/month
- Reset day: 1st of month (configurable 1-28)
- Limit of 0 = unlimited tokens
- Enforce limits at API level (check before AI requests)
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com >
2026-03-23 16:10:27 -03:00
Nurfog and Qwen-Coder
ef213a61a0
fix: Quiz score submission - use correct submitScore method
...
- QuizPlayer: Fixed method name from submitLessonScore to submitScore
- Lesson page: Fixed method name and parameter order
- submitScore signature: submitScore(userId, courseId, lessonId, score, metadata)
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com >
2026-03-23 13:29:46 -03:00
Nurfog and Qwen-Coder
5185c07092
fix: Experience lesson blocks rendering from content_blocks field
...
- Changed from lesson.metadata.blocks to lesson.content_blocks
- Backend stores blocks in content_blocks column, not metadata
- Fixes issue where only first block was showing in lessons with multiple exercises
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com >
2026-03-23 13:16:18 -03:00
Nurfog and Qwen-Coder
d5679c05e8
fix: CORS headers for video/audio assets streaming
...
- Added HEAD method to CORS allowed methods
- Added Range header support for video streaming
- Exposed Content-Range and Accept-Ranges headers
- Required for proper video playback from Experience (port 3003) to CMS (port 3001)
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com >
2026-03-23 13:07:37 -03:00
Nurfog and Qwen-Coder
2ff06ee7ae
feat: i18n full support, responsive UI, multi-model AI config, and bug fixes
...
Major Features:
- Internationalization (i18n) with auto-detection for ES/EN/PT
- Mobile-first responsive design for Studio and Experience
- Multi-model AI configuration (llama3.2:3b, qwen3.5:9b, gpt-oss:latest)
- Course language configuration (auto-detect or fixed per course)
Backend Changes:
- shared/common: ModelType enum for intelligent model selection
- LMS: log_ai_usage function migration (fix chat tutor 500 error)
- LMS/CMS: course language config fields (language_setting, fixed_language)
- LMS: /courses/{id}/language-config endpoint for language detection
Frontend Changes:
- Experience: Enhanced i18n with browser language detection
- Experience: Audio recording with HTTPS check and error handling
- Studio: Memory game with unique pair IDs and debug logging
- Studio: Expanded translations (250+ keys for ES, EN, PT)
- Both: Language selector in headers (mobile responsive)
Documentation:
- AI_MODELS_CONFIG.md: Multi-model configuration guide
- RESPONSIVIDAD_GUIA.md: Mobile-first design patterns
- I18N_RESPONSIVIDAD_IMPLEMENTACION.md: Implementation details
- DEBUG_AUDIO_RECORDING.md: Audio troubleshooting guide
- DEBUG_MEMORY_GAME.md: Memory game debugging steps
Bug Fixes:
- Fix chat tutor 500 error (missing log_ai_usage function)
- Fix audio recording (HTTPS check, browser compatibility)
- Fix memory game pair IDs (unique ID generation)
- Fix HotspotBlock TypeScript errors
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com >
2026-03-23 12:24:22 -03:00
Nurfog
0598fc4865
feat: Fix tokens Revenue stream
2026-03-19 14:54:31 -03:00
Nurfog
686eb377f0
feat: activate AI usage
2026-03-19 11:21:59 -03:00
Nurfog
a220e9742f
feat:fix data importation
2026-03-19 09:33:33 -03:00
Nurfog
42e0934a0e
feat: fix importation from remote DB
2026-03-18 17:59:54 -03:00
Nurfog
64d3d5be91
feat: implementing embedding AI
2026-03-18 17:15:39 -03:00
Nurfog
e8cdf61468
feath: save questions generated with AI
2026-03-17 17:59:55 -03:00
Nurfog
55f9a3196e
feat: fix AI for generation questions with RAG
2026-03-17 17:44:42 -03:00
Nurfog
31939e31ad
feat: fix frontend and activate imports
2026-03-17 13:53:12 -03:00
Nurfog
be699ad6ab
feat: token count implement
2026-03-17 12:07:56 -03:00
Nurfog
41279585f6
feat: creacion de plantillas para pruebas, prototipo
2026-03-16 12:28:29 -03:00
Nurfog
7409f8bfda
feat: fix models.rs
2026-03-16 09:58:00 -03:00
Nurfog
3167723a89
feat: Update default admin credentials and organization branding, refactor admin creation in install script to direct database insertion, disable rate limiting, and update documentation.
2026-03-13 13:24:06 -03:00
Nurfog
c49a49dc19
feat: Add comprehensive project context documentation and refactor CMS service to include HTTP tracing and streamline CORS configuration.
2026-03-13 12:43:32 -03:00
Nurfog
3bfff51a69
asdf
2026-03-13 12:07:14 -03:00
Nurfog
15ecc4e3b2
feat: Update database port to 5433, refine database creation and migration scripts, and add explicit CORS OPTIONS handling to CMS service routes.
2026-03-13 10:46:54 -03:00
Nurfog
f9f1238310
feat: Implement health checks, rate limiting, and security headers for services, update Node.js versions, and add Prettier configuration for frontend.
2026-03-12 17:09:05 -03:00
Nurfog
5e3db5f2a2
feat: Add "library" and "settings" translations to English, Spanish, and Portuguese locale files.
2026-03-10 10:11:34 -03:00
Nurfog
e9e173a5b0
1
2026-03-10 09:36:25 -03:00
Nurfog
2fe6dcea59
feat: Implement default branding synchronization and improve API header handling.
2026-03-09 17:55:10 -03:00
Nurfog
bde5be22e7
feat: Introduce AI code hinting, enforce single-tenant organization model, and add a Code Lab block component.
2026-03-09 17:24:15 -03:00
Nurfog
b9c17ce67b
feat: Add Mermaid diagram block with AI generation capabilities to lessons.
2026-03-09 14:45:52 -03:00
Nurfog
bc5b240984
feat: Implement AI-generated Role Playing and Hotspot interactive content blocks with UI and service integration.
2026-03-09 13:46:47 -03:00
Nurfog
c292efdc28
refactor: remove obsolete AI image and video generation traces from courses and lessons.
2026-03-09 10:52:57 -03:00
Nurfog
8542655049
refactor: Remove obsolete AI image generation traces and related fields from courses and lessons.
2026-03-09 10:52:03 -03:00
Nurfog
ebd20b5b54
feat: Add AI-powered memory match game generation and remove AI image generation from the lesson editor.
2026-03-09 10:43:59 -03:00
Nurfog
7406de9a1b
Remove AI image generation functionality from CMS and expand Docker ignore rules.
2026-03-09 10:06:26 -03:00
Nurfog
bf3f06d831
feat: Update lesson query to filter by course through modules and implement Default for the Lesson struct.
2026-03-06 13:05:41 -03:00
Nurfog
997af5d473
feat: introduce global AI task dashboard, enhance user profiles with new fields, and update database models with default implementations.
2026-03-06 12:37:39 -03:00
Nurfog
c034f7223d
feat: Unify background task representation and display by introducing generic status, progress, and task type fields across frontend and backend.
2026-03-05 16:58:23 -03:00
Nurfog
935e6b9675
feat: Add generation status to courses, implement cancellation, and enhance AI bridge call with retry logic.
2026-03-04 16:55:31 -03:00
Nurfog
01c54429a0
feat: Introduce course marketing features with dedicated metadata, image generation, and UI in both studio and experience apps.
2026-03-04 15:41:34 -03:00
Nurfog
4458decd22
actualizaciones
2026-03-03 17:44:24 -03:00
Nurfog
15f2649777
refactor: update UI components and pages with a refreshed visual design and improved styling.
2026-03-03 12:42:37 -03:00
Nurfog
9123337200
feat: Enhance UI with improved dark mode styling and color palette adjustments across course pages.
2026-03-03 11:11:06 -03:00
Nurfog
1987acd734
feat: Refactor course editor layout to support dynamic page headers and standardize styling with new utility classes, including some localization.
2026-03-02 17:32:48 -03:00
Nurfog
2f76ba2f87
feat: Introduce PageLayout component to standardize page headers and overall structure across various application pages.
2026-03-02 15:35:34 -03:00
Nurfog
fe730998a9
Update TypeScript build information.
2026-03-02 14:46:19 -03:00
Nurfog
420003f2d5
feat: Allow super-admins to retrieve courses across organizations and update navigation link styles to text-sm and text-slate-600.
2026-03-02 11:59:38 -03:00
Nurfog
9abe631782
refactor: apply nav-link-standard utility class to standardize navigation link styling across components.
2026-03-02 11:37:31 -03:00
Nurfog
81e1830563
feat: Implement dark mode styling across UI components and update README with roadmap and system requirements.
2026-03-02 11:29:55 -03:00
Nurfog
8c6cba6d2e
feat: Implement dark mode styling for profile and login pages across studio and experience applications.
2026-02-27 17:00:37 -03:00
Nurfog
ff474df40d
feat: Simplify grade handling by removing score scaling logic and updating the API to accept scores directly in a 0-100 range.
2026-02-27 13:25:58 -03:00
Nurfog
bbef932776
feat: Implement external MySQL integration for LMS enrollments and grade synchronization, including external_id and tipo_nota support.
2026-02-27 09:20:35 -03:00
Nurfog
e5373919c9
feat: Implement dark mode support by adjusting background and text colors across various pages and components.
2026-02-26 16:57:28 -03:00
Nurfog
947abcb0bc
feat: Implement organization-based SSO login with an AsyncCombobox and add logo variant branding options.
2026-02-26 11:50:34 -03:00
Nurfog
824da230a4
refactor: Remove lti_deployment_id and state from LTI structs and simplify lesson dependency query.
2026-02-25 17:24:08 -03:00
Nurfog
f6c48ca8f0
a11y: Enhance accessibility across various components by adding ARIA attributes, semantic elements, and input labels.
2026-02-25 17:18:12 -03:00
Nurfog
f36c53aed1
refactor: migrate sqlx queries from macros to the .bind() method
2026-02-25 16:23:37 -03:00
Nurfog
5b3fc800c7
a11y: Enhance accessibility of form and interactive components using semantic HTML, ARIA attributes, and keyboard navigation.
2026-02-25 16:17:40 -03:00
Nurfog
59732f3706
feat: improve accessibility with semantic HTML, ARIA attributes, and visible focus states across components.
2026-02-25 16:09:54 -03:00
Nurfog
1868f64415
feat: Adjust roadmap priorities to elevate accessibility and implement ARIA attributes in AppHeader for improved screen reader support.
2026-02-25 16:06:52 -03:00
Nurfog
44b2160590
feat: Implement peer review management, student, and session pages for courses.
2026-02-25 14:06:28 -03:00
Nurfog
c76125c96a
feat: enhance LMS retention data with completion rates, improve LTI key handling, and refine dev setup scripts
2026-02-24 12:43:58 -03:00
Nurfog
06c0290813
feat: Implement LTI development key generation, add a database migration for enrollment and retention, and include course completion rate in models.
2026-02-24 12:43:35 -03:00
Nurfog
34a1f1c77d
feat: Implement environment-aware AI service URL configuration, update web build settings, refine Docker Compose networking, and improve the installation script.
2026-02-24 10:59:09 -03:00
Nurfog
04dbe05704
feat: Implement LTI deep linking, live sessions, predictive analytics, and portfolios with associated UI and database migrations.
2026-02-24 09:37:16 -03:00
Nurfog
7f7ea3d70c
feat: Add LTI launch, lesson preview, course progress, bookmarks, and asset management features.
2026-02-23 15:43:45 -03:00
Nurfog
f365e585a2
feat: Implement course team management with dedicated UI and API, add course preview token generation, and refactor course settings UI.
2026-02-18 00:01:47 -03:00
Nurfog
89b1d1353d
feat: Implement full-stack course announcements management with cohort segmentation.
2026-02-17 23:11:25 -03:00
Nurfog
fa52397330
feat: implement server-side detailed course grade export to CSV, replacing client-side generation and adding a new API endpoint.
2026-02-17 22:53:56 -03:00
Nurfog
4c96d6b225
feat: Add bulk student enrollment functionality to courses with new API endpoint and UI.
2026-02-17 22:50:17 -03:00
Nurfog
f9e78a265a
feat: Implement advanced grading (rubrics) and lesson dependencies across CMS service, API, and Studio UI.
2026-02-17 22:43:19 -03:00
Nurfog
12df920f60
feat: add 'Save to Library' button to lesson block actions.
2026-02-16 20:53:50 -03:00
Nurfog
f9bea3c2e0
feat: Integrate content library features, allowing users to save and select blocks within the lesson editor.
2026-02-16 20:52:57 -03:00
Nurfog
9bdbd8ae5a
feat: Implement content library functionality, allowing users to save and reuse blocks within lessons.
2026-02-16 20:52:43 -03:00
Nurfog
84bbeb12c6
feat: introduce content library management for reusable content blocks with dedicated API endpoints and database schema.
2026-02-16 20:45:48 -03:00
Nurfog
1d7e5a39ce
feat: Add comprehensive peer assessment functionality including new data models, API endpoints, database migrations, and dedicated UI components for Studio and Experience applications.
2026-02-16 20:22:02 -03:00
Nurfog
cb13b14ee0
feat: Implement course gradebook with cohort filtering, CSV export, and extend analytics with cohort selection.
2026-02-16 04:44:31 -03:00
Nurfog
172b4fa2d5
feat: Implement full-stack cohort management with dedicated API, database schema, and admin UI, alongside updates to the database reset script and documentation.
2026-02-16 04:03:19 -03:00
Nurfog
fbac6b4405
refactor: switch to named debounce import from lodash
2026-02-16 02:48:46 -03:00
Nurfog
acbe47e084
feat: add lodash and its type definitions to project dependencies
2026-02-16 02:26:59 -03:00
Nurfog
3ae1ae6fd6
feat: Implement student notes functionality for lessons, including API endpoints, database schema, and frontend UI.
2026-02-16 02:13:50 -03:00
Nurfog
82b346294c
chore: Adjust RUST_LOG level from debug to info in cms and experience services.
2026-02-15 15:14:36 -03:00
Nurfog
6927ac2d23
feat: Enhance JWT authentication error logging, gate notification fetching by user status, and enable Rust debug logging in Docker Compose.
2026-02-15 15:10:42 -03:00
Nurfog
2a16a18676
feat: Update monetary column data types to DOUBLE PRECISION, add IF NOT EXISTS to column additions, and introduce a timestamp trigger function.
2026-02-15 14:43:31 -03:00
Nurfog
bb4cd01d99
feat: Externalize API URLs and JWT secret configuration using build arguments and environment variables with default fallbacks.
2026-02-15 14:30:00 -03:00
Nurfog
b8827c67b9
feat: Implement real Mercado Pago API integration for payment preference creation and webhook processing, replacing mock calls and adding necessary environment variables.
2026-02-15 14:14:24 -03:00
Nurfog
4eb7ade407
feat: Implement course monetization with Mercado Pago, update roadmap status, and refine discussion service handlers.
2026-02-15 13:54:01 -03:00
Nurfog
34e72ae985
feat: Implement core monetization features including course pricing, payment preference creation, and transaction management with Mercado Pago integration.
2026-02-15 13:40:48 -03:00
Nurfog
f613f34a96
style: enhance MediaPlayer transcription display with adjusted text, scrollability, and sticky label.
2026-01-29 16:26:10 -03:00
Nurfog
6dc104b609
refactor: Restructure MediaPlayer layout with CSS Grid and refine active cue centering.
2026-01-29 16:24:30 -03:00
Nurfog
aea555bbd3
feat: Implement transcription auto-scrolling and language selection, and overhaul MediaPlayer component styling and layout.
2026-01-29 15:44:43 -03:00
Nurfog
a8bc54bfa8
feat: Enhance MediaPlayer with cues_en support and refactor its layout to separate interactive cues from a new full transcription text display.
2026-01-29 15:09:47 -03:00
Nurfog
5a6017609e
feat: Add onTimeUpdate prop to MediaPlayer and utilize it in VideoMarkerBlock to synchronize current time.
2026-01-29 14:56:43 -03:00
Nurfog
dc519c8551
feat: Introduce isGraded prop to MediaPlayer to conditionally hide interactive elements and refine its layout.
2026-01-29 14:56:01 -03:00
Nurfog
564c0823c0
feat: Implement bilingual transcription using Ollama and rename the internal translation helper function.
2026-01-29 14:31:45 -03:00
Nurfog
3fba311aa2
refactor: Update lesson query to join courses through modules instead of directly.
2026-01-28 17:48:00 -03:00
Nurfog
a4a42efeaf
feat: add detailed logging for transcription and summarization processes and ensure correct content type synchronization for transcription triggering.
2026-01-28 17:35:39 -03:00
Nurfog
23d761bada
feat: mensajes
2026-01-27 11:13:08 -03:00
Nurfog
26f4283d0e
feat: add comprehensive discussion forums with threads, nested replies, voting, and moderation, alongside updates to authentication flows.
2026-01-26 17:51:49 -03:00
Nurfog
d3a019541d
feat: enhance Playwright E2E tests for instructor and student flows and optimize Docker build contexts.
2026-01-26 15:24:50 -03:00
Nurfog
7a0a42ed25
feat: Localize default UI language and service messages to Spanish.
2026-01-26 09:18:42 -03:00
Nurfog
c774c3608b
feat: implement AI tutor memory and RAG system for continuous learning
...
- Added chat sessions and message persistence for interaction history.
- Integrated Knowledge Base (RAG) using PostgreSQL Full Text Search.
- Implemented automated ingestion of lesson content during course sync.
- Updated AITutor frontend to support persistent session IDs via localStorage.
- Added database migrations for chat_sessions, chat_messages, and knowledge_base.
- Fixed SQLx build issues to allow offline Docker image compilation.
2026-01-23 15:59:53 -03:00
Nurfog
470c7f0172
feat: Implement AI tutor functionality, add branding fields, and improve API URL handling.
2026-01-23 14:48:41 -03:00
Nurfog
60e2af72f0
feat: ad interface to upload logo and favicon
2026-01-23 11:43:17 -03:00