Skip to content

Enhancement: Client-Side Image Compression for Delivery Proofs #161

Description

@johdanike

Description
johdanike opened on Jun 25
Member
📁 Implementation Directory
components/logistics/ImageCapture.tsx

🎯 Goal
Reduce data payload sizes for drivers in low-bandwidth areas by compressing Delivery Proof images before upload.

📋 Requirements

  • Integrate a lightweight client-side compression library (e.g., browser-image-compression).
  • Ensure images captured via the UI are resized and compressed to < 500KB while retaining readability.
  • Show a visual 'Compressing...' state on the upload button.

🔧 Technical Scope
React, browser-image-compression, File APIs

🌿 Branch
git checkout -b enhance/image-capture-compression

✅ Acceptance Criteria

  • Uploaded files must be demonstrably smaller than the raw camera output while maintaining visual clarity.
  • Strict Layered Architecture: Implement using the Component -> Hook -> Service pattern
  • Data Source: Response data must be retrieved from the backend API. No Inline Mock Objects
  • Screenshot of all implementations must be included in PR
  • AI-generated PR submissions are strictly disallowed
  • Closes #[issue_id] with a work summary included in the PR body
  • Note a default in any of this will result to issue not being closed nor merged

📌 PR Requirements

  • ⚠️ Assignment is required before starting — comment to request assignment
  • PR must comply fully with CONTRIBUTING.md
  • AI Agent submissions are DISALLOWED and will be closed without review
  • Upload a screenshot showing all unit tests passing or API response
  • PR description must include: Closes #[issue_id] and a brief summary of work done

💬 Example Commit
enhance(logistics): implement client-side compression for proof of delivery images

Metadata

Metadata

Assignees

No one assigned

    Labels

    Stellar WaveTasks related to the Stellar Wave development phase

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions