nobswebdev
26899fdf66
add full-page drag hint overlay for file drop on upload.
2026-10-30 20:43:18 +01:00
nobswebdev
88bc0111de
reorder about page sections with host comparison first.
...
Move comparison table after the intro and put Compare hosts first in section nav.
2026-10-30 19:07:45 +01:00
nobswebdev
946cf21110
add preview thumbnail to metadata inspector and share links.
...
Reuse queue object URLs in UploadPanelHeader for the selected row.
2026-10-30 18:54:56 +01:00
nobswebdev
1298e05010
show metadata inspector tabs when strip fails.
...
Use MetadataTabBody to drive Original and Stripped tab content when strip fails after a successful read.
2026-10-30 18:37:02 +01:00
nobswebdev
19a8feff19
add not-found handling to ZK and hotlink viewer pages.
...
Rename ViewerView and view store to ZkViewerView and useZkViewStore; unify hotlink load and ZK unlock error copy.
2026-10-30 17:43:29 +01:00
nobswebdev
bb08bb389f
make upload and metadata UI responsive on mobile.
...
Improve narrow-viewport layout for upload, About, and shell overflow; keep modal scroll without extra dismiss or a11y markup changes.
2026-10-30 16:23:09 +01:00
nobswebdev
938229eeea
add thumbnail preview for each queued image.
...
Create and revoke blob URLs on pick and session reset; reset upload session on view unmount.
2026-10-29 22:31:04 +01:00
nobswebdev
9cc73e0dc5
replace upload dropzone with global intake controls.
...
Window drag-drop and paste share the same pick path as the file chooser; configure modal lives in the intake component.
2026-10-29 21:40:07 +01:00
nobswebdev
ebe8b9aa2f
fix app shell layout so footer stays visible on short pages.
...
Replace min-h-screen on viewer and delete mains with flex-1 inside a growing router outlet.
2026-10-29 19:52:47 +01:00
nobswebdev
ec072f7dda
simplify configure upload modal share mode copy.
...
Short hints per mode with Learn more links to About anchors in a new tab.
2026-10-29 19:52:47 +01:00
nobswebdev
e07049dda9
update about flow diagrams and align prose width with comparison table.
...
Refreshed stripped JPEGs and removed max-w-3xl so sections use the full max-w-5xl main column.
2026-10-29 18:58:37 +01:00
nobswebdev
1df2e6a4f7
add site footer with source links and author credit.
...
Hardcoded clearnet and onion repository URLs; instance links omitted for Onion-Location.
2026-10-29 18:58:37 +01:00
nobswebdev
fa1c2abb51
add about page with features and competitor comparison.
...
Includes section nav, flow diagrams with lightbox, comparison table, brand theme tokens, and router hash scroll.
2026-10-29 18:14:18 +01:00
nobswebdev
eed17c9aab
add top navigation with logo upload and about links.
...
Shared app header in the layout shell and upload main area flex fix for the new chrome.
2026-10-29 18:14:15 +01:00
nobswebdev
00ef845277
Add DeleteView one-click delete page at /d/:id?token=...
2026-10-27 19:13:40 +01:00
nobswebdev
6407b64f26
Derive API origin from VITE_API_BASE_URL for hotlink image src.
...
Nest api config (baseUrl + baseUrlRoot) so dev cross-origin /i requests work without a separate app-env flag.
2026-10-27 14:03:30 +01:00
nobswebdev
dfc52749b2
Add hotlink viewer page at /h/:id/:secret.
2026-10-26 23:06:28 +01:00
nobswebdev
82cdb6ffa3
Clear ZK viewer secrets and image blob when leaving the page.
2026-10-26 20:22:47 +01:00
nobswebdev
dc8e576679
add password prompt to ZK viewer for wrapped uploads
2026-10-26 20:06:54 +01:00
nobswebdev
112aa99f1e
add ViewerView decrypt from URL fragment via view store
2026-10-26 19:13:15 +01:00
nobswebdev
7b70788dcf
Point hotlink viewer links at the viewer page path.
...
Hotlink share links were using the zero-knowledge viewer URL. The direct image URL stays separate for embeds.
2026-10-25 23:39:33 +01:00
nobswebdev
ee9f80da5f
Remove unused resolveAxiosErrorMessage helper.
...
Upload UI uses predefined queue messages only; surfacing API response text is out of scope for this PR.
2026-10-25 22:23:01 +01:00
nobswebdev
42fe209164
Simplify upload modal, dropzone, and settings markup.
...
Remove redundant dialog ARIA wiring, hide the file input with hidden instead of sr-only, and trim footnote accessibility attributes that duplicated visible text.
2026-10-25 22:00:16 +01:00
nobswebdev
f5be0a0de3
Show copyable share links after batch upload completes.
...
Add share results panel gated by showShareLinks, build URLs from queue entry secrets, and align file name handling with the metadata inspector.
2026-10-25 22:00:16 +01:00
nobswebdev
f305ce7a39
Refactor metadata inspector with shared tab list and output panel.
...
Reuse InlineTabList for original/stripped tabs and a single pre block component to match patterns used elsewhere on the upload page.
2026-10-25 22:00:15 +01:00
nobswebdev
4e9a3368a6
Persist upload IDs and URL secrets on successful queue entries.
...
Store server response fields and mode-specific secrets so share links can be built client-side after upload without precomputed paths.
2026-10-25 22:00:05 +01:00
nobswebdev
5f6ee193e7
Configure share link origins from clearnet scheme and onion hostname.
...
Lets the frontend build full viewer and delete URLs for both networks without hardcoding host shape in components.
2026-10-25 22:00:05 +01:00
nobswebdev
95ed6e5f58
Add share URL builders and embed format helpers for uploaded images.
...
Centralize clearnet/onion paths, delete links, and BBCode/Markdown/HTML output with unit tests and escape-html for safe HTML snippets.
2026-10-25 22:00:01 +01:00
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