← FRD Management
8. Library Module
Pixally CRM

Library module

Library Management Module

Functional Requirement Document

BA & Ideation: Dakshraj Jhala

Reviewed By: KG (Project Manager)

Updated Date: 15 September 2025
Status: Approved

Version 1.0

Functional Requirements Document (FRD) - Library Management Module

1. Module Overview

  • Module Name: Library Management - Images & Documents
  • Purpose: Central repository for managing agency-level digital assets, including images and documents, with upload, preview, organization, and sharing capabilities across all brands within the agency
  • Business Goal: Provide a unified asset management system that enables efficient storage, retrieval, and reuse of digital assets across all brand operations while maintaining agency-level access control

2. User Roles & Permissions

3. User Flow

Primary Workflow:

  1. Access Library Module - The user navigates to the Library module from the side menu, Tools Module > Library Sub-Module
  2. Upload New Files - Click the "Upload" button to open the upload pop-up. The user can drag and drop or click to select files, and the auto-upload starts immediately with a 0-100% progress bar indication.
  3. Select Tab - Choose between the Images or Documents tab based on the content type needed. The images tab will be the default.

Critical Path: Library Module Access → Browse/Upload → File Management → Download/Delete

4. Field Details & Validations

4.1 File Upload Validation Rules

File Type

Validation Rules

Images

- Supported formats are jpeg, .jpg, .webp, .png

Documents

- Supported formats are doc, xls, and pdf

Upload Session

- A maximum of 15 files, with each file up to 15 MB, is allowed per upload session.

Upload Condition

- Upload Fail: If the upload fails before completion (100%), display the label: "Upload failed! Please try again" on the file that failed to upload

- "Try Again" button to retry failed uploads. Retry will begin the upload process from the start. Max 3 retries per file.

Uploaded File Name Display

- Displays the file name uploaded by the user, fetched directly from their system

- If the file name characters exceed the width, then showcase with ellipses with a hover to showcase the detailed name

Close (X)

- On click, closes the pop-up

4.2. Empty state

Field Name

Validation Rules

Empty Message

Display message

Title: "Your Library is Empty. Add Item"

Subtitle: "Add items to start filling up your library."

Upload

Upload CTA. On click, the Upload Files/Images pop-up opens

Search

Showcase message - "No Results found" when a search occurs, but matches no results for the image and document tabs

The empty state appears in each tab when no data is available- Images, Documents, or both

5. Success Message Handling

Validation Scenario

Success Message

Single/Multiple files uploaded successfully

"Your file has been uploaded successfully."

File downloaded successfully

"Your file has been downloaded successfully."

File deleted successfully

"Your file has been deleted successfully."

6. Error Message Handling

Field

Validation Scenario

Error Message

File Upload

Single file size exceeds 15 MB

"File size cannot exceed 15 MB."

More than 15 files uploaded

“You can upload a maximum of 15 files.”

Invalid file format

"Please upload a valid file."

File Upload / Download / Delete

Network/Server error

"Something went wrong."

File Upload

Upload interrupted before completion (0%–100%)

Label display - "Upload failed! Please try again." and also "Try again" button displayed

XLS and Doc File preview

Preview the DOC or XLS file

“This file can’t be previewed. Try downloading it instead.”

7. Edge Cases

Scenario

Expected Behavior

Browser refresh during upload

Cancel all in-progress uploads

Multiple Image /Document tabs open in the browser, Cross-Session Deletion Handling

This file is no longer available. Please refresh the page to see the latest changes.

8. Functional Logic

8.1 File Upload Logic:

  • When the user opens the library module for the first time, it will display an empty state. Refer - Click Here
  • The system accepts multiple file formats for Images & Documents. Refer - Click Here
  • The maximum file size limit and the number of simultaneous uploads restriction, Refer - Click Here
  • Auto-upload starts immediately when files are selected from the system file dialog
  • Duplicate filename handling: automatic appending of (1), (2), etc
  • Upload progress tracking with a percentage display and a retry option for failed uploads
  • Auto-upload begins immediately after file selection, with a progress bar shown, and gets uploaded to the S3 bucket
  • Multiple simultaneous uploads will process all uploads with individual progress bars

8.2 File Organization Logic:

  • Files are automatically sorted after being successfully uploaded into the appropriate tabs (Images or Documents) based on supported format detection
  • Agency-level access - All files are visible to all agency team members, regardless of the uploader

8.3 File Display Logic:

  • Images tab: Grid/gallery layout displaying images as thumbnails (sorted by newest uploaded first) with hover overlays showing file metadata as below
    • Filename: Validations - Click Here
    • Upload Date: Shown in "MMM DD, YYYY" format (e.g., Jun 12, 2025)
    • Uploaded By: Name of the uploader. Mention “you” for the file uploader
    • Uploaded File Size: Shown in KB/MB
    • Kebab Menu: Download/Delete (visible to Admin and original uploader only)
  • Image preview
    • Clicking the image opens a preview
    • Full-size image shown in the same tab with blurred background
    • Metadata: It will display the same data as shown on hover
    • Download button: To download the image
    • The close button returns to the Images tab
  • Documents tab: Table layout with sortable columns and pagination, showing File icon, File name (with validation – Click Here), Upload Date (MMM DD, YYYY), Uploaded By (name or 'you'), File Size (KB/MB), and actions for Download and Delete
  • Document Preview
    • Only PDF files’ preview is supported; XLS and DOC previews are not, instead showing the message as per (Refer - Click Here)
    • Preview Metadata: It will display the same data as shown in the table
    • Download button: To download the file
    • The close button returns to the Document Tab
  • Real-time search based on filename matching (case insensitive)
  • Pagination: Disabled on empty screens, with the Previous button disabled on the first page, Next button disabled on the last page, and starting after 10 images per page.

8.4 Delete Logic

  • Only the Agency Owner, Admin, or the original uploader of the file (image or document) can delete it.
  • On click, a confirmation pop-up appears before deleting it
    • Title - Delete Document
    • Message: "Are you sure you want to delete {filename}?"
    • CTA - “Delete” and “Cancel”
  • On confirmation, the file will be permanently deleted from the library, but it will remain available in any module where it is used. For example, an image used in a project header, notes, or email will not be affected if deleted from the library.

8.5 Download Logic

  • Visible to all users. On click, downloads the original image or file to the local system

8.6 Library Module Impact:

  • Library Images Tab Impact: Refer to the table below for the impact of library module images on other modules within the Pixally CRM

Module

Image/Document Upload Allowed

Image Crop Allowed (Yes/No)

Multiselect Images Allowed (Yes/No)

Project Header Image

Image

Yes

No

Brand setup header

Image

Yes

No

Email Template Module

Both

No

Yes

Project details - Email Attachment

Both

No

Yes

Notes

Image

No

No

Lead Form

Image

No

No

Client Contract & Service Agreement

Image

No

No

Proposal

Image

No

No

Packages

Image

No

No

Invoice

Image

No

No

Questionnaires

Image

No

No

9. Test Cases

10. Acceptance Criteria

  • File Upload: Supports valid formats, auto-uploads on selection with progress, retry, and duplicate name handling. Click Here
  • File Organization: Files are auto-sorted into Images/Documents and are visible to all agency members
  • File Display: Images in a grid with preview; documents in a table with sortable columns, PDF preview only, search & pagination
  • Delete: Only Owner/Admin/uploader can delete after confirmation; removed from Library but not from linked modules
  • Download: All users can download the original files

11. Dependencies

Module/System

Dependency Type

Impact if Unavailable

User Authentication

Service dependency

Cannot identify the uploader or enforce permissions

File Storage Service

Infrastructure dependency

Cannot store or retrieve files

12. References

Linked tickets (0)

No tickets linked — generate test cases directly from this FRD instead.

Failed