Add modernization report for build infrastructure, project structure, and Web APIs #87
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Creates a comprehensive technical roadmap for modernizing QR Snapper's 2018-era tooling and codebase.
Build Infrastructure
Current: Gulp 4.0 + Rollup 1.9 + Babel 7.4 with complex multi-step pipeline
Recommended: Vite (primary) or esbuild (speed) or Parcel 2 (simplicity)
Project Structure
Problem:
main.mjsis 606 lines mixing camera management, QR detection, UI, callbacks, and navigationSolution: Modular component architecture:
components/camera/- CameraManager, CameraSource, WebCamManager, CameraFallbackcomponents/dialogs/- QRCodeDialog, AboutDialog, CallbackControllerutils/- url-utils, device-utils, securitylib/qr-detector/- QR detection logic isolatedTarget: All files <200 lines with clear separation of concerns
Modern Web APIs
Remove deprecated patterns:
Add modern capabilities:
Already implemented: Barcode Detection API with polyfill fallback (documented)
Additional Coverage
javascript:protocol checkReport includes code examples, configurations, and progressive enhancement strategies throughout.
Original prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.