[GH-ISSUE #508] Replace moment with dayjs for Smaller Bundle Size and Modern Support #506

Open
opened 2026-03-03 19:51:01 +03:00 by kerem · 0 comments
Owner

Originally created by @kics223w1 on GitHub (Jun 4, 2025).
Original GitHub issue: https://github.com/ProxymanApp/proxyman-windows-linux/issues/508

Originally assigned to: @kics223w1 on GitHub.

📋 Description

  • The current implementation uses moment, a library that is outdated and large (≈4.35MB).
  • We only use a limited subset of its functionality, which makes its heavy size unnecessary.
  • We propose replacing it with dayjs, a modern alternative that is:
    • Lightweight (~670KB)
    • Well-maintained
    • Widely adopted (24M+ weekly downloads)
    • API-compatible with moment for most common use cases.

Acceptance Criteria

  • Locate all instances where moment is imported and used.
  • Replace them with equivalent dayjs functionality.
  • Ensure that ProxymanLogV2 files exported using moment can still be correctly opened and parsed using dayjs.
  • Rebuild and package the app to verify:
    • The application functions correctly with dayjs.
    • The final app bundle size is reduced.

📦 Expected Outcome

  • Improved performance and reduced bundle size.
  • Future-proofed codebase by removing deprecated dependencies.
Originally created by @kics223w1 on GitHub (Jun 4, 2025). Original GitHub issue: https://github.com/ProxymanApp/proxyman-windows-linux/issues/508 Originally assigned to: @kics223w1 on GitHub. ### 📋 Description - The current implementation uses [`moment`](https://www.npmjs.com/package/moment), a library that is **outdated** and **large** (≈4.35MB). - We only use a limited subset of its functionality, which makes its heavy size unnecessary. - We propose replacing it with [`dayjs`](https://www.npmjs.com/package/dayjs), a modern alternative that is: - **Lightweight** (~670KB) - **Well-maintained** - **Widely adopted** (24M+ weekly downloads) - **API-compatible** with `moment` for most common use cases. ### ✅ Acceptance Criteria - [ ] Locate all instances where `moment` is imported and used. - [ ] Replace them with equivalent `dayjs` functionality. - [ ] Ensure that `ProxymanLogV2` files exported using `moment` can still be correctly opened and parsed using `dayjs`. - [ ] Rebuild and package the app to verify: - [ ] The application functions correctly with `dayjs`. - [ ] The final app bundle size is reduced. ### 📦 Expected Outcome - Improved performance and reduced bundle size. - Future-proofed codebase by removing deprecated dependencies.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/proxyman-windows-linux#506
No description provided.