Scientific image viewer/processor built with Tauri + React + Rust.
M0: Workspace setup, Tauri window, PNG display via ritile:// protocol
M1a: Multi-image tabs, zoom/pan, brightness/contrast, native file dialog,
keyboard shortcuts, status bar
M1b: RGB/multichannel composite display with per-channel LUTs,
visibility toggles, additive blending
M2: Pixel inspector, histogram/statistics panel, image processing
operations (invert, gaussian blur, median filter, threshold,
histogram equalization), Z/T stack navigation support
Architecture: 14-crate Cargo workspace (ri-types, ri-core, ri-io,
ri-lut, ri-render, ri-store, ri-ops, ri-measure, ri-ipc, ri-app,
plus phase 2-4 placeholders). React frontend with hooks-based state
management and component architecture.
39 tests, all passing.
Co-Authored-By: Claude Opus 4.6 <[email protected]>
35 lines
762 B
JSON
35 lines
762 B
JSON
{
|
|
"productName": "RustyImage",
|
|
"version": "0.1.0",
|
|
"identifier": "dev.redclaw.rustyimage",
|
|
"build": {
|
|
"beforeDevCommand": "npm run dev",
|
|
"devUrl": "http://localhost:5173",
|
|
"beforeBuildCommand": "npm run build",
|
|
"frontendDist": "../../ui/dist"
|
|
},
|
|
"app": {
|
|
"security": {
|
|
"csp": "default-src 'self'; img-src 'self' ritile: data:; style-src 'self' 'unsafe-inline'; script-src 'self'"
|
|
},
|
|
"windows": [
|
|
{
|
|
"title": "RustyImage",
|
|
"width": 1200,
|
|
"height": 800,
|
|
"resizable": true
|
|
}
|
|
]
|
|
},
|
|
"bundle": {
|
|
"active": true,
|
|
"icon": [
|
|
"icons/32x32.png",
|
|
"icons/128x128.png",
|
|
"icons/[email protected]",
|
|
"icons/icon.icns",
|
|
"icons/icon.ico"
|
|
]
|
|
}
|
|
}
|