add lesson time tracking and quiz score trends per user#103
Merged
portableDD merged 2 commits intoNexacore-Org:mainfrom Jun 4, 2025
Merged
add lesson time tracking and quiz score trends per user#103portableDD merged 2 commits intoNexacore-Org:mainfrom
portableDD merged 2 commits intoNexacore-Org:mainfrom
Conversation
portableDD
requested changes
May 30, 2025
Contributor
portableDD
left a comment
There was a problem hiding this comment.
please removel the analytics resources inside module and place it directly inside src, and delete the module folder.
thanks
Contributor
Author
|
it has been Adjusted |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
📌 Pull Request Title
Description
Created a Track granular lesson engagement per user, including time spent and quiz performance. Expose backend endpoints to retrieve analytics for dashboards or profile pages.
Created module: analytics.module.ts, analytics.service.ts, analytics.controller.ts.
Track:
lesson_start_time, lesson_end_time (calculate duration).
Quiz score per attempt.
Implemented the following endpoints:
POST /analytics/lesson-start
POST /analytics/lesson-end
POST /analytics/quiz-score
GET /analytics/user/:userId
Used decorators to auto-fetch user from JWT.
Ensured analytics data is stored efficiently (via new lesson_analytics and quiz_analytics entities).
Testing:
Wrote Unit tests for duration and score tracking logic.
Integration tests for each endpoint.
Performance test for GET /analytics/user/:userId with multiple lessons.
Related Issues
Changes Made
How to Test
npm run test -- src/modules/analytics/analytics.service.spec.ts src/modules/analytics/analytics.controller.spec.ts src/modules/analytics/analytics.e2e-spec.ts src/modules/analytics/analytics.performance.spec.ts
Screenshots (if applicable)
Checklist