3edafcfe1e
A HEIC is the one camera file no engine on this platform will paint: Chromium answers createImageBitmap with InvalidStateError and its WebCodecs take no hvc1 still, and unlike a RAW there is no JPEG preview inside to lift. It is decoded in software instead, by libheif built to wasm, in a worker of its own — so a folder of them reads without the tab stopping for a second, and what leaves the worker is the same JPEG developRaw hands the studio. Nothing downstream knows the difference. Into the studio it goes on the same terms as every other frame: dropped, picked, or opened from the catalogue, no tier asked and the engine's own colour untouched. The frame's date, ISO and position come off the HEIC itself, which is passed along as the bytes the stamps read. The catalogue's tile does not pay the decode: a phone writes a small HEVC copy of its frame as an item of its own (thmb, 320x240 on an iPhone), reachable only by walking the container by hand, and it decodes in milliseconds where the frame takes a second — from the same 256KB the catalogue already reads for a header. The shelves themselves now want an account: a guest gets the note and the way in, and the scan never starts.
33 lines
814 B
JSON
33 lines
814 B
JSON
{
|
|
"name": "recipescam-web",
|
|
"private": true,
|
|
"version": "0.1.0",
|
|
"type": "module",
|
|
"scripts": {
|
|
"prepare-wasm": "node scripts/copy-wasm.mjs",
|
|
"predev": "npm run prepare-wasm",
|
|
"dev": "vite",
|
|
"prebuild": "npm run prepare-wasm",
|
|
"build": "tsc --noEmit && vite build",
|
|
"typecheck": "tsc --noEmit",
|
|
"preview": "vite preview --port 4173"
|
|
},
|
|
"dependencies": {
|
|
"canvaskit-wasm": "^0.42.0",
|
|
"exifr": "^7.1.3",
|
|
"libheif-js": "^1.23.5",
|
|
"libraw-wasm": "^1.6.0",
|
|
"onnxruntime-web": "^1.30.0",
|
|
"react": "^18.3.1",
|
|
"react-dom": "^18.3.1"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^22.20.3",
|
|
"@types/react": "^18.3.12",
|
|
"@types/react-dom": "^18.3.1",
|
|
"@vitejs/plugin-react": "^4.3.4",
|
|
"typescript": "^5.7.2",
|
|
"vite": "^6.0.7"
|
|
}
|
|
}
|