Skip to content

[feat]: Implement Backend for Notes Management  #17

@shuklamaneesh23

Description

@shuklamaneesh23

Notes Management Backend Implementation

Feature Overview

The Notes Management Section backend will handle the storage, retrieval, and management of notes in PDF and image formats. This will include CRUD operations with proper validation, authentication, and security measures.

Core Functionalities

  • Fetch all notes → Retrieve all stored notes.
  • Upload a new note → Allow users to upload PDF/image notes.
  • Delete a note → Remove a note using its unique ID.
  • Update a note → Modify note metadata or replace the file.

Tasks Breakdown

  • Create a Notes model with fields like title, file_url, author, created_at, updated_at, etc.
  • Implement a GET endpoint to fetch all available notes.
  • Implement a POST endpoint to upload PDFs/images with proper validation.
  • Implement a DELETE endpoint to remove a note by ID.
  • Implement a PATCH endpoint to update note details or replace a file.
  • Add validation & error handling for all endpoints.
  • Secure uploads to allow only users with @iiitl.ac.in email addresses.

API Endpoints

Method Endpoint Description
GET /api/notes Fetch all notes
POST /api/notes Upload a new note (PDF/Image)
DELETE /api/notes/:id Delete a note by ID
PATCH /api/notes/:id Modify note metadata or replace file

Expected Outcome

A secure and efficient backend for managing PDF/image notes with CRUD operations, authentication, and validation mechanisms.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions