Commit Graph
30 Commits
Author SHA1 Message Date
nobswebdev b4cc26a632 Polish upload UI for dual queue status and batch confirm flow.
Metadata error confirm, success styling, upload-confirmed hiding of configure, and remove stale PR plan doc.
2026-10-23 18:34:17 +02:00
nobswebdev 271c2b7b2d Execute batch uploads with metadata gates, encryption, and queue state.
Separate upload entries per file, ALTCHA on POST, and stripped-or-original fallback on metadata errors.
2026-10-23 18:34:13 +02:00
nobswebdev fe643d9831 Add client ALTCHA proof-of-work and Vite env flags for uploads.
Expose enabled/max-number settings and wire altcha-lib for per-upload challenges.
2026-10-23 18:34:09 +02:00
nobswebdev 805665745b Add batch upload configure modal and settings mapping utilities.
Users configure share mode, expiry, and max views before upload; batch summary confirms choices above the queue.
2026-10-22 03:14:02 +02:00
nobswebdev 3bb3258686 Pin dev Docker images to Node 22.23.4 for October 2026 security fixes. 2026-10-21 17:46:33 +02:00
nobswebdev d82d451448 Extract upload dropzone and queue UI with shared pick validation utils. 2026-10-20 22:20:16 +02:00
nobswebdev 47361a83b9 add optional Argon2id password wrap for zk uploads.
Wrap the image DEK for password-protected batches, keep the URL fragment as a separate secret, and extend prepare/decrypt helpers with tests.
2026-10-20 18:31:33 +02:00
nobswebdev 4376ed7ff1 Expand Vitest coverage for shared frontend utils.
Cover Axios error message extraction, generic error fallbacks, ArrayBuffer views used by Web Crypto, and share URL builders.
2026-10-19 23:05:46 +02:00
nobswebdev afbd5e204c Add client-side ZK and hotlink upload crypto with Pinia store.
Encrypt image bytes in the browser, keep keys out of POST bodies (URL fragment or path secret), and POST ciphertext via typed upload API helpers.
2026-10-19 23:05:33 +02:00
nobswebdev 0238858c8b add frontend AES-GCM and base64 helpers with Vitest coverage. 2026-10-19 03:00:03 +02:00
nobswebdev e1f0d01467 Restore Axios error.message when response body has no API message. 2026-10-18 18:22:15 +02:00
nobswebdev 1826cef8fe Strip metadata in the ExifTool worker during upload preview.
Cache stripped blobs, show original vs stripped metadata tabs, and keep user-facing errors on fixed store messages with console logging for diagnostics.
2026-10-18 18:02:49 +02:00
nobswebdev 18597f4127 Add upload queue UI with ExifTool metadata preview on pick.
Users can select images within configured limits, see per-row load status, and inspect raw ExifTool output before upload work continues.
2026-10-17 21:39:59 +02:00
nobswebdev 5b6304709e Serialize ExifTool work in the worker with a FIFO job queue.
Overlapping parseMetadata calls on one WASM instance caused wrong metadata when multiple files were read in parallel; callers can still postMessage concurrently.
2026-10-15 20:43:22 +02:00
nobswebdev e10341d44b Patch zeroperl-ts so worker WASM load honors custom fetch.
Postinstall updates @6over3/zeroperl-ts and wires the worker to load zeroperl.wasm via Vite ?url.
2026-10-15 18:57:43 +02:00
nobswebdev 42f9a3eafc Wire metadata previews through ExifTool store with friendly status messages.
Prefetch ExifTool on upload mount and track pending/loading/ready per file for batch preview loads.
2026-10-15 17:18:25 +02:00
nobswebdev b47c5c7696 Add ExifTool worker and Pinia store for off-thread metadata reads.
Warm up WASM in a dedicated worker with a tiny JPEG probe and expose init/read RPC to the main thread.
2026-10-15 17:18:21 +02:00
nobswebdev 321c67fa3d Add metadata Pinia store for ExifTool queue preview reads.
Introduce preview entry types, resolveErrorMessage, and nullcart-style resolveAxiosErrorMessage for upcoming upload API errors.
2026-10-13 22:18:48 +02:00
nobswebdev e89f76a673 Pin @uswriting/exiftool and patch exit-0 stderr guard on install.
Postinstall removes upstream guards that mark parseMetadata failed when stderr is non-empty after success; Docker dev image copies patches before npm ci.
2026-10-13 21:07:04 +02:00
nobswebdev 8b42dbb962 Use Node 22 in dev Docker images for file-type v22. 2026-10-12 21:45:44 +02:00
nobswebdev bffb6de145 Align frontend env with single-image upload validation limits. 2026-10-12 20:18:43 +02:00
nobswebdev 4b7f8459cb Align frontend env with validation limits and axios plugin.
Flatten share/API config keys, nest validation limits only, and move the HTTP client to plugins/axios.
2026-10-07 00:36:16 +02:00
nobswebdev b16678bf74 add dockerignore for backend and frontend dev images.
Prevent copying host node_modules, dist, and build artifacts into Docker build context.
2026-10-06 19:44:13 +02:00
nobswebdev ceeaea2120 add Pinia axios and VITE config to frontend. 2026-09-28 14:55:56 +02:00
nobswebdev a7dac01168 add vue-router and empty upload viewer delete views. 2026-09-28 14:55:21 +02:00
nobswebdev 0d1b9c0d40 add Tailwind and design tokens to frontend.
Tailwind v4 via Vite plugin, theme tokens in main.css, and VS Code hints for v4 at-rules.
2026-09-28 14:24:57 +02:00
nobswebdev 559ba6c4b5 add frontend Docker dev service on port 5173.
Vite hot reload via src bind mount; starts after backend health check passes.
2026-09-27 23:25:34 +02:00
nobswebdev cb0eed2e01 add Prettier config from nullcart.
Editor format-on-save uses root .prettierrc; align App.vue indentation.
2026-09-27 23:16:11 +02:00
nobswebdev 3ed8510aa9 add Vite Vue 3 TypeScript frontend skeleton.
Minimal home view and dev server on port 5173 for later Docker wiring.
2026-09-27 23:12:01 +02:00
nobswebdev 90c2bbdbdd add monorepo layout and root README 2026-09-27 22:29:19 +02:00