Skip to content

Conversation

@Elshahaby
Copy link
Contributor

Adds full CRUD functionality for user notes, including advanced filtering, sorting, and pagination.

Description:

This pull request introduces the full backend implementation for the user notes feature, allowing learners to create, manage, and review personal notes associated with topics.

Key Changes:

Database: Added a Note model to the Prisma schema with relationships to User, Topic, and Course for efficient filtering.
API Endpoints: Implemented a new set of RESTful endpoints under /api/notes and /api/topics/:topicId/notes for complete CRUD functionality.
Business Logic: Created a dedicated note.service.ts to encapsulate all business logic, ensuring a clean separation of concerns.
Validation: Integrated Zod schemas for rigorous validation of all incoming requests, including query parameters for advanced filtering, sorting, search, and pagination.
Security: All new endpoints are protected and require user authentication. Authorization checks are in place to ensure users can only access and modify their own notes.

Adds full CRUD functionality for user notes, including advanced filtering, sorting, and pagination.
@saifsweelam saifsweelam changed the base branch from main to dev August 19, 2025 19:52
@saifsweelam saifsweelam merged commit 1dd8f91 into IEEEManCSC:dev Aug 19, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants