ashim-hq
ae411f2d72
chore(release): 1.15.9 [skip ci]
2026-04-17 23:26:26 +08:00
semantic-release-bot
95af281584
chore(release): 1.15.8 [skip ci]
...
## [1.15.8](https://github.com/ashim-hq/ashim/compare/v1.15.7...v1.15.8 ) (2026-04-17)
### Bug Fixes
* copy Node.js from official image instead of apt-get install ([536125e ](https://github.com/ashim-hq/ashim/commit/536125ec9fbc5758bdd3e8f0f4c44253de2231c7 ))
2026-04-17 07:36:40 +00:00
semantic-release-bot
caa2160ef8
chore(release): 1.15.7 [skip ci]
...
## [1.15.7](https://github.com/ashim-hq/ashim/compare/v1.15.6...v1.15.7 ) (2026-04-17)
### Bug Fixes
* add retry with backoff for apt-get update on CUDA base image ([3d6db5a ](https://github.com/ashim-hq/ashim/commit/3d6db5a32d3f9292d5476e9bd80c1f06624fa316 ))
2026-04-17 07:04:40 +00:00
semantic-release-bot
23dae8d152
chore(release): 1.15.6 [skip ci]
...
## [1.15.6](https://github.com/ashim-hq/ashim/compare/v1.15.5...v1.15.6 ) (2026-04-17)
### Performance Improvements
* parallelize model downloads and switch to registry cache ([79c4ed6 ](https://github.com/ashim-hq/ashim/commit/79c4ed6a359b008dedeb154a55e2764ee0e3d9fa ))
2026-04-17 06:55:08 +00:00
semantic-release-bot
2fd0c00564
chore(release): 1.15.5 [skip ci]
...
## [1.15.5](https://github.com/ashim-hq/ashim/compare/v1.15.4...v1.15.5 ) (2026-04-17)
### Bug Fixes
* exclude e2e-docker tests from Vitest runner ([8df18c5 ](https://github.com/ashim-hq/ashim/commit/8df18c56a6c69e2a188cf0e7c97e692cd4c0e7ec ))
2026-04-17 06:41:05 +00:00
semantic-release-bot
3dc98374e2
chore(release): 1.15.4 [skip ci]
...
## [1.15.4](https://github.com/ashim-hq/ashim/compare/v1.15.3...v1.15.4 ) (2026-04-17)
### Bug Fixes
* verbose error handling, batch processing, and multi-file support ([3223960 ](https://github.com/ashim-hq/ashim/commit/32239600ae6ce30628e77e61a805ca0a167b5068 ))
* verbose errors, batch processing, multi-file support ([#1 ](https://github.com/ashim-hq/ashim/issues/1 )) ([8b87cf8 ](https://github.com/ashim-hq/ashim/commit/8b87cf888c6194e2af427a180607d7c53a1d15b9 ))
2026-04-17 06:21:10 +00:00
semantic-release-bot
b76b9a1878
chore(release): 1.15.3 [skip ci]
...
## [1.15.3](https://github.com/ashim-hq/ashim/compare/v1.15.2...v1.15.3 ) (2026-04-16)
### Bug Fixes
* retry apt-get update on transient mirror sync errors (Acquire::Retries=3) ([cec7163 ](https://github.com/ashim-hq/ashim/commit/cec71632d0c868c3a413b813ff15baccc8fa8cdd ))
2026-04-16 19:46:27 +00:00
semantic-release-bot
59e6f2f28c
chore(release): 1.15.2 [skip ci]
...
## [1.15.2](https://github.com/ashim-hq/ashim/compare/v1.15.1...v1.15.2 ) (2026-04-16)
### Bug Fixes
* use GHCR_TOKEN with write:packages scope for GHCR login ([e14414f ](https://github.com/ashim-hq/ashim/commit/e14414f3061981b1454dc7d4504c64ec01db945e ))
2026-04-16 18:13:08 +00:00
semantic-release-bot
fd1eb9c781
chore(release): 1.15.1 [skip ci]
...
## [1.15.1](https://github.com/ashim-hq/ashim/compare/v1.15.0...v1.15.1 ) (2026-04-16)
### Bug Fixes
* **docker:** create /opt/models unconditionally so chown works in CI ([93ce289 ](https://github.com/ashim-hq/ashim/commit/93ce2891cc26afc93f01168d008927d3d356c1a9 ))
* **docker:** run frontend builder on BUILDPLATFORM to fix esbuild crash under QEMU ([6a3ad0d ](https://github.com/ashim-hq/ashim/commit/6a3ad0d496e291b30a3f719ca079c43ce7aab705 ))
* resolve runtime model path mismatch for non-root Docker user ([f28792a ](https://github.com/ashim-hq/ashim/commit/f28792a5ed78221f38cf2f3c80cae9f24cd7f5e3 ))
2026-04-16 15:46:06 +00:00
Siddharth Kumar Sah
9cd91edee1
chore(release): 1.15.0
...
Bump all workspace packages from 1.14.0 to 1.15.0.
2026-04-15 23:17:31 +08:00
Siddharth Kumar Sah
85b1cfc10a
chore: rename Stirling-Image to ashim across entire codebase
...
Complete rebrand from Stirling-Image to ashim following the project
move to https://github.com/ashim-hq/ashim .
Changes across 117 files:
- Package scope: @stirling-image/* → @ashim/*
- GitHub URLs: stirling-image/stirling-image → ashim-hq/ashim
- Docker Hub: stirlingimage/stirling-image → ashimhq/ashim
- GitHub Pages: stirling-image.github.io → ashim-hq.github.io
- All branding text: "Stirling Image" → "ashim"
- Docker service/volumes/user: stirling → ashim
- Database: stirling.db → ashim.db
- localStorage keys: stirling-token → ashim-token
- Environment variables: STIRLING_GPU → ASHIM_GPU
- Python cache dirs: .cache/stirling-image → .cache/ashim
- SVG filter IDs, test prefixes, and all other references
2026-04-14 20:55:42 +08:00
a1e11dff74
feat(gif-tools): SOTA upgrade with 6 processing modes ( #52 )
...
* feat(find-duplicates): upgrade to 128-bit dHash with metadata and thumbnails
* feat(find-duplicates): add custom-results display mode and duplicate store
* feat(find-duplicates): add results overview grid and detail comparison view
* feat(find-duplicates): overhaul settings with sensitivity presets and download actions
* feat(find-duplicates): update i18n description
* chore: replace jsqr with zxing-wasm for barcode reading
* feat(barcode-read): rewrite backend with zxing-wasm for all barcode types
* feat(barcode-read): rewrite frontend with multi-file, results table, progress, export
- Multi-file sequential processing with per-file progress
- Structured results table with type badges and copy per-result
- Copy All and Export CSV functionality
- Thorough scan toggle (maps to tryHarder in zxing-wasm)
- Before/after view shows annotated image with bounding boxes
- Updated tool description in constants and i18n
* feat(stitch): update tool name and description for redesign
* feat(stitch): add grid layout, alignment, border, radius, quality, and new resize modes
* feat(stitch): redesign settings UI with grid, alignment, border, radius, quality
* test(stitch): add stitch to e2e tool navigation suite
* feat(vectorize): redesign with dual-engine backend and preset-driven UI
- Backend: potrace for B&W, VTracer (@neplex/vectorizer) for full-color vectorization
- Frontend: 5 presets (logo, illustration, photo, sketch, custom)
- Settings: color precision, gradient step, detail, smoothing, corner threshold, invert
- Updated OpenAPI spec and i18n description
* feat(border): redesign with presets, shadow, padding color, swatches
- Add 8 one-click presets (Clean White, Gallery Black, Shadow, Rounded, Polaroid, Vintage, Minimal, Cinematic)
- Implement proper shadow rendering with blur, offset X/Y, color, opacity
- Add padding color control (was hardcoded white)
- Add color swatches for quick color selection
- Wrap in form for Enter key submission
- Add smart validation (requires at least one effect active)
- Align frontend/backend slider ranges
- Organize UI with sections and collapsible shadow toggle
* feat(split): overhaul image splitting with live grid overlay and tile preview
- Add interactive-split display mode with SplitCanvas component
- Live SVG grid overlay on uploaded image showing split boundaries
- Two split modes: Grid (NxM) and Tile Size (px dimensions)
- 9 grid presets (2x1, 1x2, 2x2, 3x1, 1x3, 3x3, 2x3, 3x2, 4x4)
- Output format selection (original/PNG/JPG/WebP) with quality slider
- Post-split tile preview thumbnails with individual download
- Download All as ZIP button
- HEIC/HEIF preview with loading spinner
- Backend: tile-size mode, output format conversion, quality control
- Zustand store for split state management
* feat(split): rewrite backend and frontend settings
Backend: tile-size mode, output format conversion, quality control.
Frontend: split modes, presets, format selector, tile preview grid.
* feat(border): add live CSS preview and remove before/after slider
- Add imageWrapperStyle prop to ImageViewer for live border preview
- Add onImageStyle callback through tool-page to settings components
- Change border displayMode to no-comparison (no slider)
- BorderControls sends live CSS styles (border, padding, radius, shadow)
- Preview updates instantly as user adjusts sliders or clicks presets
* fix: repair i18n file corrupted by formatter during merge conflict resolution
* feat(border): enable live CSS preview in right pane as settings change
* fix(border): keep CSS preview visible after processing for WYSIWYG consistency
* chore(gif-tools): scaffold for SOTA upgrade
- Add animated GIF test fixture (3 frames, 100x100)
- Update tool description to reflect new capabilities
- Add fflate dependency to API for ZIP creation
* feat(gif-tools): rewrite backend with 6 processing modes
Modes: resize (with percentage), optimize (colors/dither/effort),
speed (delay manipulation), reverse (frame reorder), extract
(single/range/all with ZIP), rotate (90/180/270 + flip).
Adds /api/v1/tools/gif-tools/info metadata endpoint.
* test(gif-tools): add integration tests for all 6 modes
Tests metadata endpoint, resize (pixel + percentage), optimize,
speed, reverse, extract (single/range/all), and rotate (angle + flip).
Fix animated.gif fixture to be a real 3-frame animation (was a single
100x300 frame). Fix reverse and rotate modes to process frames
individually and reassemble via GIF binary concatenation, since
Sharp 0.33.x loses page-height metadata when reconstructing from raw
pixel data.
* feat(gif-tools): rewrite frontend with tabbed 6-mode UI
- useGifInfo hook for metadata (frame count, dimensions, duration)
- Info bar showing GIF properties
- 3x2 mode grid: Resize, Optimize, Speed, Reverse, Extract, Rotate
- Animation modes disabled for static images
- Loop control (infinite/once/custom)
- Batch processing support
* test(gif-tools): add to representative tools in e2e suite
---------
Co-authored-by: Siddharth Kumar Sah <siddharth123sk@gmail.com >
2026-04-13 16:23:07 +08:00
semantic-release-bot
2ac7b6875b
chore(release): 1.14.0 [skip ci]
...
# [1.14.0](https://github.com/stirling-image/stirling-image/compare/v1.13.0...v1.14.0 ) (2026-04-10)
### Bug Fixes
* add FILES_STORAGE_PATH to Dockerfile ENV to prevent data loss ([b575243 ](https://github.com/stirling-image/stirling-image/commit/b575243e9a0cb2ac4567d785a74e57dea912e9e2 ))
* add shutdown timeout and improve health endpoint ([986ad37 ](https://github.com/stirling-image/stirling-image/commit/986ad37bb5e6644dd93521018a1bcd2d6243f502 ))
* address code review findings before merge ([caf65bc ](https://github.com/stirling-image/stirling-image/commit/caf65bc4697ddfea27674b56fd2e8de847edc734 ))
* correct PaddleOCR language codes for model download and OCR ([e1ee571 ](https://github.com/stirling-image/stirling-image/commit/e1ee57103c201f104b737c2719d0014d4912d4b2 ))
* force CPU mode in download_models.py for build-time compatibility ([b4b59a7 ](https://github.com/stirling-image/stirling-image/commit/b4b59a7500375bc2e65cb0050e5308b07610d2cf ))
* handle paddlepaddle-gpu CUDA import at build time gracefully ([0083a74 ](https://github.com/stirling-image/stirling-image/commit/0083a741a9a3924ccc37c4e622c2980a8a41f1a3 ))
* install cuda-compat stubs for build-time PaddlePaddle import ([d31d665 ](https://github.com/stirling-image/stirling-image/commit/d31d66556ef0aa7c20a73a94f5d95b54b99fbb8a ))
* load RealESRGAN pretrained weights for actual AI upscaling ([fa9569c ](https://github.com/stirling-image/stirling-image/commit/fa9569c920d6bdac094dcd661fc5cf3b4be3f17a ))
* revert to npx tsx in CMD for pnpm compatibility ([e55253d ](https://github.com/stirling-image/stirling-image/commit/e55253dee03f9e93187d50e0ffb66b423a1230c0 ))
* simplify smoke test to CPU-only imports for build-time compat ([3481663 ](https://github.com/stirling-image/stirling-image/commit/34816639609cbccab91a5cad5760fea769c4b565 ))
* skip RealESRGAN import check on arm64 in smoke test ([1e2ef52 ](https://github.com/stirling-image/stirling-image/commit/1e2ef5284686253ae33e05411a515369b7f41a3e ))
* split paddlepaddle-gpu and paddleocr installs, use --extra-index-url ([74183e8 ](https://github.com/stirling-image/stirling-image/commit/74183e8dc1e3d8f90cff4484f5526c3c3dfba9a6 ))
* suppress ML library stdout noise in ocr.py and upscale.py ([c0b419d ](https://github.com/stirling-image/stirling-image/commit/c0b419de21acb92b243ef78191dff6a2153c5961 ))
* use PaddlePaddle GPU package index for CUDA wheels ([dd9528f ](https://github.com/stirling-image/stirling-image/commit/dd9528f53c9bcf148842ab94f14a4ebd5ae223ec ))
* use platform-specific mediapipe version for arm64 compatibility ([7face19 ](https://github.com/stirling-image/stirling-image/commit/7face19238f54cfea02d453b697e34b50ccd9d21 ))
### Features
* expand model pre-download with verification and smoke test ([a9e3b96 ](https://github.com/stirling-image/stirling-image/commit/a9e3b9688776a51efd2f42cae810de425cf1d9cf ))
* simplify CI to single unified Docker build ([b385a2e ](https://github.com/stirling-image/stirling-image/commit/b385a2eabb255f7a8fe2d3720a358ff5bf254310 ))
* simplify compose to single file, add log rotation ([84f7057 ](https://github.com/stirling-image/stirling-image/commit/84f7057a49850b7a47440099ec2caad8d3b87efe ))
* unified Docker image with GPU auto-detection ([6c3eb3b ](https://github.com/stirling-image/stirling-image/commit/6c3eb3b876cee0301d5fb3ed8324a3c8e92b1307 ))
2026-04-10 14:13:37 +00:00
semantic-release-bot
aa4e5cac8d
chore(release): 1.13.0 [skip ci]
...
# [1.13.0](https://github.com/stirling-image/stirling-image/compare/v1.12.0...v1.13.0 ) (2026-04-10)
### Bug Fixes
* complete RBAC implementation lost during merge ([cc8a272 ](https://github.com/stirling-image/stirling-image/commit/cc8a27239b02a63ca88abc3e363c8a46f89674e8 ))
### Features
* add backend permission map and requirePermission middleware ([1a99571 ](https://github.com/stirling-image/stirling-image/commit/1a995711535a1525e709cdd7bff75361f457e942 ))
* add permission checks and admin override to API key routes ([d776680 ](https://github.com/stirling-image/stirling-image/commit/d776680f2d2342e35b84821792d6c24ae7e0ffbc ))
* add permission checks and admin override to pipeline routes ([59f40db ](https://github.com/stirling-image/stirling-image/commit/59f40dbfd4a97f8691b5fbbf6d338063c389987b ))
* add permission checks and ownership scoping to user-files routes ([86ba698 ](https://github.com/stirling-image/stirling-image/commit/86ba69825a1dd87c9f868d79cd806b7d594cce1b ))
* add shared Permission and Role types ([2f594e9 ](https://github.com/stirling-image/stirling-image/commit/2f594e96057c72bf107f3012426e87af5f97eb94 ))
* add tools:use permission check to tool, batch, pipeline, and upload routes ([885ace5 ](https://github.com/stirling-image/stirling-image/commit/885ace54f09b3301989f8aa404c15f60e19c054d ))
* extend useAuth hook with role and permissions from session ([e0ba8be ](https://github.com/stirling-image/stirling-image/commit/e0ba8be7b3211299c8cde90b2d22e7796eee2206 ))
* filter settings tabs by user permissions, remove admin fallback ([bcbd24a ](https://github.com/stirling-image/stirling-image/commit/bcbd24a2395b93b64dbbf638ba0138f9ec9ba9da ))
* include permissions and teamName in login/session responses ([4943177 ](https://github.com/stirling-image/stirling-image/commit/49431772ec6a02eae8aced48da92ef87a6c89afb ))
* replace requireAdmin with requirePermission on all routes ([af7f57d ](https://github.com/stirling-image/stirling-image/commit/af7f57d52f49c8f8412876639076084c96eba284 ))
2026-04-10 13:26:01 +00:00
Siddharth Kumar Sah
d650f301ca
chore: add mupdf dependency for PDF-to-image tool
2026-04-10 20:56:13 +08:00
semantic-release-bot
b20039eddf
chore(release): 1.12.0 [skip ci]
...
# [1.12.0](https://github.com/stirling-image/stirling-image/compare/v1.11.0...v1.12.0 ) (2026-04-10)
### Features
* unified Docker image with GPU auto-detection ([#37 ](https://github.com/stirling-image/stirling-image/issues/37 )) ([b0083e2 ](https://github.com/stirling-image/stirling-image/commit/b0083e2b083d0bf52b6a576f7ef67fbff0cc8cbe ))
2026-04-10 05:45:42 +00:00
semantic-release-bot
7bc979f677
chore(release): 1.11.0 [skip ci]
...
# [1.11.0](https://github.com/stirling-image/stirling-image/compare/v1.10.0...v1.11.0 ) (2026-04-07)
### Features
* **docs:** auto-generate llms.txt via vitepress-plugin-llms ([6a362d6 ](https://github.com/stirling-image/stirling-image/commit/6a362d6443cd85ac58a46f5b5cf29f9b6ff3020c ))
2026-04-07 16:53:54 +00:00
semantic-release-bot
d4d421d3ff
chore(release): 1.10.0 [skip ci]
...
# [1.10.0](https://github.com/stirling-image/stirling-image/compare/v1.9.0...v1.10.0 ) (2026-04-07)
### Features
* add content-aware resize API route and registration ([d464942 ](https://github.com/stirling-image/stirling-image/commit/d464942cd9a7c1fecc837a14211e3fc5030d5cee ))
* add content-aware resize toggle to resize settings UI ([aace4ca ](https://github.com/stirling-image/stirling-image/commit/aace4caf0c5b10059a31e9dff5476d11b34b4323 ))
* add seam carving AI bridge module ([d3b6462 ](https://github.com/stirling-image/stirling-image/commit/d3b646207d3312aea9e12cc9435649b039bc4ac8 ))
* add seam carving Python script with face protection ([1460ab7 ](https://github.com/stirling-image/stirling-image/commit/1460ab7a4ad8235714ebd72ab1f8092baa456032 ))
2026-04-07 16:11:15 +00:00
semantic-release-bot
14deda12b8
chore(release): 1.9.0 [skip ci]
...
# [1.9.0](https://github.com/stirling-image/stirling-image/compare/v1.8.1...v1.9.0 ) (2026-04-07)
### Features
* add stitch API route handler ([1716468 ](https://github.com/stirling-image/stirling-image/commit/171646886f678b0f98140d378e675443bc7c737f ))
* add stitch settings UI component ([330bfcf ](https://github.com/stirling-image/stirling-image/commit/330bfcf162deeb30fb573702b554d304500eebde ))
* register stitch component in web tool registry ([7ec5d86 ](https://github.com/stirling-image/stirling-image/commit/7ec5d86d9123696e84ebeae603ec09ce4c1477d3 ))
* register stitch route in API tool registry ([66520cd ](https://github.com/stirling-image/stirling-image/commit/66520cdd0ee49bbecffdb3e248c03d2763aa5d08 ))
* register stitch tool in shared constants and i18n ([fbbbe70 ](https://github.com/stirling-image/stirling-image/commit/fbbbe70a35a6cd3cbc389503cff3333b85392871 ))
2026-04-07 14:21:16 +00:00
semantic-release-bot
c598230331
chore(release): 1.8.1 [skip ci]
...
## [1.8.1](https://github.com/stirling-image/stirling-image/compare/v1.8.0...v1.8.1 ) (2026-04-07)
### Bug Fixes
* add variant diagnostics to health endpoint and lite mode banner ([3be388e ](https://github.com/stirling-image/stirling-image/commit/3be388e12f8bc6a35d30b1b94e2772f9e005bccd ))
2026-04-07 10:35:05 +00:00
semantic-release-bot
cd2db4afdd
chore(release): 1.8.0 [skip ci]
...
# [1.8.0](https://github.com/stirling-image/stirling-image/compare/v1.7.7...v1.8.0 ) (2026-04-06)
### Bug Fixes
* filter unsafe round-trip keys server-side in editMetadata ([a430e91 ](https://github.com/stirling-image/stirling-image/commit/a430e913245f6c83194cc1e47c34a327d80840d5 ))
### Features
* add edit-metadata API route with inspect and edit endpoints ([5284d5e ](https://github.com/stirling-image/stirling-image/commit/5284d5ece5dd393bf346f29d4d95b506f0c87c94 ))
* add edit-metadata UI component with granular strip support ([492eeb0 ](https://github.com/stirling-image/stirling-image/commit/492eeb0f962b50db598b5ac50cc9c2ceea9ce605 ))
* add EditMetadataOptions type and exif-reader dep to image-engine ([723c794 ](https://github.com/stirling-image/stirling-image/commit/723c79491ecbfc9795ba6bbdacc8e47caa903719 ))
* extract shared metadata parsing utilities into image-engine ([7fba05e ](https://github.com/stirling-image/stirling-image/commit/7fba05e1dccb4fd370848bf6b20276a9edffbd86 ))
* implement editMetadata operation in image-engine ([939bb04 ](https://github.com/stirling-image/stirling-image/commit/939bb049413202a4df37d1affa3765cd9a41e9e2 ))
* register edit-metadata in shared constants and i18n ([6ac366b ](https://github.com/stirling-image/stirling-image/commit/6ac366b1556b285c6764927267fcb3b885b90fe9 ))
2026-04-06 14:09:07 +00:00
semantic-release-bot
b387d2d17a
chore(release): 1.7.7 [skip ci]
...
## [1.7.7](https://github.com/stirling-image/stirling-image/compare/v1.7.6...v1.7.7 ) (2026-04-06)
### Bug Fixes
* improve AI tool reliability for face detection and background removal ([#25 ](https://github.com/stirling-image/stirling-image/issues/25 )) ([2eb77fe ](https://github.com/stirling-image/stirling-image/commit/2eb77fe0f2a2340e69cb927ef7abd32eaa0400be ))
2026-04-06 14:01:20 +00:00
semantic-release-bot
3c4562c9ce
chore(release): 1.7.6 [skip ci]
...
## [1.7.6](https://github.com/stirling-image/stirling-image/compare/v1.7.5...v1.7.6 ) (2026-04-06)
### Bug Fixes
* batch SSE progress and non-AI processing UX ([#24 ](https://github.com/stirling-image/stirling-image/issues/24 )) ([dc70cdb ](https://github.com/stirling-image/stirling-image/commit/dc70cdbdd589601446c2794fe85019c5e8252714 ))
2026-04-06 13:25:24 +00:00
semantic-release-bot
3018137548
chore(release): 1.7.5 [skip ci]
...
## [1.7.5](https://github.com/stirling-image/stirling-image/compare/v1.7.4...v1.7.5 ) (2026-04-06)
### Bug Fixes
* add server-side logging to AI tool routes ([#23 ](https://github.com/stirling-image/stirling-image/issues/23 )) ([75c7f13 ](https://github.com/stirling-image/stirling-image/commit/75c7f135feda6af190f1dd1f92dcf27d17229c31 ))
2026-04-06 13:00:53 +00:00
semantic-release-bot
48c803acfa
chore(release): 1.7.4 [skip ci]
...
## [1.7.4](https://github.com/stirling-image/stirling-image/compare/v1.7.3...v1.7.4 ) (2026-04-06)
### Bug Fixes
* batch file ordering and format preservation for image tools ([#20 ](https://github.com/stirling-image/stirling-image/issues/20 )) ([5d85562 ](https://github.com/stirling-image/stirling-image/commit/5d8556254f0684de7c3a1a177a28f8d1e0818cd3 )), closes [#13 ](https://github.com/stirling-image/stirling-image/issues/13 ) [#14 ](https://github.com/stirling-image/stirling-image/issues/14 )
2026-04-06 04:54:19 +00:00
semantic-release-bot
2eb74f242e
chore(release): 1.7.3 [skip ci]
...
## [1.7.3](https://github.com/stirling-image/stirling-image/compare/v1.7.2...v1.7.3 ) (2026-04-06)
### Bug Fixes
* **docs:** correct broken llms.txt links on REST API page ([b46d250 ](https://github.com/stirling-image/stirling-image/commit/b46d2504e17d06b075964e063de19529a42bc363 ))
2026-04-06 03:30:11 +00:00
semantic-release-bot
42525db6dc
chore(release): 1.7.2 [skip ci]
...
## [1.7.2](https://github.com/stirling-image/stirling-image/compare/v1.7.1...v1.7.2 ) (2026-04-05)
### Bug Fixes
* use torch.cuda for GPU detection instead of onnxruntime providers ([8d2f401 ](https://github.com/stirling-image/stirling-image/commit/8d2f40151277c1e00a9ca20a6956e37d2c204d48 ))
2026-04-05 14:24:35 +00:00
semantic-release-bot
e8572358e9
chore(release): 1.7.1 [skip ci]
...
## [1.7.1](https://github.com/stirling-image/stirling-image/compare/v1.7.0...v1.7.1 ) (2026-04-05)
### Bug Fixes
* prevent false GPU detection when CUDA image runs without GPU ([a291d1f ](https://github.com/stirling-image/stirling-image/commit/a291d1fe0ba6100f717441f346a6df77df7e8fdd ))
2026-04-05 14:04:25 +00:00
semantic-release-bot
609fd57de8
chore(release): 1.7.0 [skip ci]
...
# [1.7.0](https://github.com/stirling-image/stirling-image/compare/v1.6.0...v1.7.0 ) (2026-04-05)
### Bug Fixes
* **web:** skip empty Authorization header for forward-auth proxy compatibility ([d0c69d6 ](https://github.com/stirling-image/stirling-image/commit/d0c69d6a4670ce6ffa397d8b4432687ed9b4d395 )), closes [#6 ](https://github.com/stirling-image/stirling-image/issues/6 )
### Features
* add GPU/CUDA acceleration support (:cuda Docker tag) ([29a382e ](https://github.com/stirling-image/stirling-image/commit/29a382e9e0eb1ce8a7d08e68c41443495a52d3f8 ))
2026-04-05 12:36:40 +00:00
semantic-release-bot
30f36e6a5c
chore(release): 1.6.0 [skip ci]
...
# [1.6.0](https://github.com/stirling-image/stirling-image/compare/v1.5.3...v1.6.0 ) (2026-04-04)
### Features
* lightweight Docker image without AI/ML tools (:lite tag) ([449a2fc ](https://github.com/stirling-image/stirling-image/commit/449a2fc319e97cddfa71c29556e2d433dde78d6d )), closes [#1 ](https://github.com/stirling-image/stirling-image/issues/1 )
2026-04-04 16:23:46 +00:00
semantic-release-bot
51f10abb35
chore(release): 1.5.3 [skip ci]
...
## [1.5.3](https://github.com/stirling-image/stirling-image/compare/v1.5.2...v1.5.3 ) (2026-04-04)
### Bug Fixes
* use heif-convert for HEIC decoding on Linux ([98553ed ](https://github.com/stirling-image/stirling-image/commit/98553ed6743e11ff9af8e6fc718ce550d33a7f54 ))
2026-04-04 13:55:46 +00:00
semantic-release-bot
d2381af9cd
chore(release): 1.5.2 [skip ci]
...
## [1.5.2](https://github.com/stirling-image/stirling-image/compare/v1.5.1...v1.5.2 ) (2026-04-04)
### Bug Fixes
* install HEVC codec plugins for CI HEIC tests ([8991cde ](https://github.com/stirling-image/stirling-image/commit/8991cde0aba91ee50383eaf14ca0a80fcf45da55 ))
2026-04-04 13:51:05 +00:00
semantic-release-bot
169fb41d57
chore(release): 1.5.1 [skip ci]
...
## [1.5.1](https://github.com/stirling-image/stirling-image/compare/v1.5.0...v1.5.1 ) (2026-04-04)
### Bug Fixes
* install libheif-examples in CI for HEIC tests ([f07454d ](https://github.com/stirling-image/stirling-image/commit/f07454d349cc5029636aa95bac7d67f505133424 ))
2026-04-04 13:41:45 +00:00
semantic-release-bot
cafe52d55d
chore(release): 1.5.0 [skip ci]
...
# [1.5.0](https://github.com/stirling-image/stirling-image/compare/v1.4.0...v1.5.0 ) (2026-04-04)
### Features
* add HEIC/HEIF format support for input and output ([6717c17 ](https://github.com/stirling-image/stirling-image/commit/6717c17a26262f1e45037b4cb454df9400c5930e ))
2026-04-04 13:34:28 +00:00
semantic-release-bot
84283c16bd
chore(release): 1.4.0 [skip ci]
...
# [1.4.0](https://github.com/stirling-image/stirling-image/compare/v1.3.1...v1.4.0 ) (2026-04-04)
### Features
* add "Crop to Content" mode to smart crop tool ([93ad7cd ](https://github.com/stirling-image/stirling-image/commit/93ad7cdfc170717a980ba12a2d90e8e3a9109989 )), closes [#7 ](https://github.com/stirling-image/stirling-image/issues/7 )
2026-04-04 11:50:22 +00:00
semantic-release-bot
dba3f65d8c
chore(release): 1.3.1 [skip ci]
...
## [1.3.1](https://github.com/stirling-image/stirling-image/compare/v1.3.0...v1.3.1 ) (2026-04-04)
### Bug Fixes
* default theme to light instead of following system preference ([30908ed ](https://github.com/stirling-image/stirling-image/commit/30908ed058439f0cc8cc70976091083c260d6b05 ))
2026-04-04 11:42:34 +00:00
semantic-release-bot
bc2d9bcea1
chore(release): 1.3.0 [skip ci]
...
# [1.3.0](https://github.com/stirling-image/stirling-image/compare/v1.2.1...v1.3.0 ) (2026-04-04)
### Bug Fixes
* add XHR timeout to prevent UI spinning forever ([dae27f4 ](https://github.com/stirling-image/stirling-image/commit/dae27f4d559d873af13b683a7b64e273d752e057 ))
* disable worker pool to prevent Docker processing hang ([5cd2b86 ](https://github.com/stirling-image/stirling-image/commit/5cd2b864bd878c80990d7ce47050b8e777f333a3 ))
* log volume permission errors instead of swallowing them ([3642b7d ](https://github.com/stirling-image/stirling-image/commit/3642b7d3b23649a2c65e8580cf760714fa725ff3 ))
* replace crypto.randomUUID with generateId in AI tool settings ([659081c ](https://github.com/stirling-image/stirling-image/commit/659081c5686bfdee8f3155714fcdba712ad154ab ))
* replace crypto.randomUUID with generateId in pipeline/automation ([b650dcd ](https://github.com/stirling-image/stirling-image/commit/b650dcd79128d95e66f2f1f172805e22ffa97f0d ))
* replace crypto.randomUUID with generateId in use-tool-processor ([7a5a753 ](https://github.com/stirling-image/stirling-image/commit/7a5a753a2d4e74a65b4852fdd2d8e96331706559 ))
* replace navigator.clipboard with copyToClipboard utility ([9f03543 ](https://github.com/stirling-image/stirling-image/commit/9f0354388f22a57e4562a76b9140d1dd604089f1 ))
* resolve multiple API and e2e test bugs ([9d62173 ](https://github.com/stirling-image/stirling-image/commit/9d621734c3a34d846a65210f43a7037c4fa4628a ))
* restore navigator.clipboard and execCommand mocks in tests ([6b03a8b ](https://github.com/stirling-image/stirling-image/commit/6b03a8b8bde9b36b2de2fe377703e45d40645868 ))
### Features
* add copyToClipboard() utility with execCommand fallback ([19ce303 ](https://github.com/stirling-image/stirling-image/commit/19ce303123a917595d670247afcfa0df2b64117a ))
* add generateId() utility for non-secure context compatibility ([f61ab9f ](https://github.com/stirling-image/stirling-image/commit/f61ab9f85cd5893742fe11cdd749f9c4330b13b3 ))
2026-04-04 09:58:22 +00:00
semantic-release-bot
9f2dc00ec8
chore(release): 1.2.1 [skip ci]
...
## [1.2.1](https://github.com/stirling-image/stirling-image/compare/v1.2.0...v1.2.1 ) (2026-04-03)
### Bug Fixes
* handle volume permission issues for bind-mounted /data directory ([39afb2a ](https://github.com/stirling-image/stirling-image/commit/39afb2a4032f64d49ef897da9b2616fe87668e0c ))
2026-04-03 16:17:11 +00:00
semantic-release-bot
7827a374b2
chore(release): 1.2.0 [skip ci]
...
# [1.2.0](https://github.com/stirling-image/stirling-image/compare/v1.1.0...v1.2.0 ) (2026-04-03)
### Features
* move theme toggle and GitHub button to top-right navbar ([47e53dc ](https://github.com/stirling-image/stirling-image/commit/47e53dc6cd173e5f8731e5bfa38dc12f586a16be ))
2026-04-03 15:20:53 +00:00
semantic-release-bot
c9f7cf27ec
chore(release): 1.1.0 [skip ci]
...
# [1.1.0](https://github.com/stirling-image/stirling-image/compare/v1.0.1...v1.1.0 ) (2026-04-03)
### Features
* add GitHub stars button to docs navbar and fix footer license ([47adfde ](https://github.com/stirling-image/stirling-image/commit/47adfde5cb450b00a5058354f70dcd633a60d219 ))
2026-04-03 15:15:03 +00:00
Siddharth Kumar Sah
70b0ceed1c
chore: switch to AGPLv3 dual-license
...
Replace MIT with AGPLv3 + commercial dual-license. Add copyright header
and dual-license notice to LICENSE, add CLA to CONTRIBUTING.md, update
README license section, and update all package.json license fields.
2026-04-03 23:07:58 +08:00
semantic-release-bot
acbe15def5
chore(release): 1.0.1 [skip ci]
...
## [1.0.1](https://github.com/stirling-image/stirling-image/compare/v1.0.0...v1.0.1 ) (2026-03-30)
### Bug Fixes
* allow SVG files in the convert tool ([4fa8dd0 ](https://github.com/stirling-image/stirling-image/commit/4fa8dd07804504d56aefb96856f47638dabffefb ))
2026-03-30 03:37:53 +00:00
semantic-release-bot
8d875fe6dc
chore(release): 1.0.0 [skip ci]
...
# 1.0.0 (2026-03-30)
### Bug Fixes
* **a11y:** add aria-hidden to decorative GemLogo SVG ([d47548a ](https://github.com/stirling-image/stirling-image/commit/d47548a1d7d2de995c881465b79a463de20354df ))
* add remove-background settings to pipeline step configurator ([017a715 ](https://github.com/stirling-image/stirling-image/commit/017a71562ad7b15d7d1abec6cee9f8ab73db2b34 ))
* add SSE progress endpoint to public paths ([b3f590c ](https://github.com/stirling-image/stirling-image/commit/b3f590c8b35fb396cf298187f241e45827ea1db8 ))
* **api:** allow Scalar docs through auth and CSP ([a46d500 ](https://github.com/stirling-image/stirling-image/commit/a46d500012e1f0724038c695a17e7dafd9be0c40 ))
* **api:** resolve team name lookup and show server error messages ([620b8ad ](https://github.com/stirling-image/stirling-image/commit/620b8ad038506a03633ab9baf738c6c316fa4336 ))
* **api:** use content instead of spec.content for Scalar v1.49 API ([05854fd ](https://github.com/stirling-image/stirling-image/commit/05854fd61f90a1096e1682ad021d744d178d9b9b ))
* apply continuous progress bar to erase-object and OCR ([8db84a7 ](https://github.com/stirling-image/stirling-image/commit/8db84a753cd8dbd522146aa25e85bb454b032490 ))
* **blur-faces:** switch from MediaPipe to OpenCV and auto-orient images ([f15102c ](https://github.com/stirling-image/stirling-image/commit/f15102c632d3fcbc5d33b33fd9cfdea5e4689eb6 ))
* bridge.ts ENOENT check for Python venv fallback ([977b5f5 ](https://github.com/stirling-image/stirling-image/commit/977b5f5ec0fdc6600e88b57734d8616a89b7c446 ))
* clear search when adding a step from the tool picker ([7b1b019 ](https://github.com/stirling-image/stirling-image/commit/7b1b019b772a9e36d51e2d696cd5e15312ddc704 ))
* continuous progress bar (no 100%→0% reset) ([28cd950 ](https://github.com/stirling-image/stirling-image/commit/28cd950ede6d0fc03e0d7cca0a013d883ea00238 ))
* **crop:** use percentCrop from onChange to fix inflated pixel values ([fbdbe09 ](https://github.com/stirling-image/stirling-image/commit/fbdbe0949a64d072e4e86d08c7b39372592eaf04 ))
* deduplicate react in Vite to prevent zustand hook errors in monorepo ([e8dfd2e ](https://github.com/stirling-image/stirling-image/commit/e8dfd2e628e80734a613b56c46830071e9dbeeac ))
* **docker:** add build layer caching for faster Docker rebuilds ([14c630f ](https://github.com/stirling-image/stirling-image/commit/14c630ff23d973aa9d512ed87ede049ebd4b600f ))
* **docker:** skip husky prepare script in production install ([200e7d1 ](https://github.com/stirling-image/stirling-image/commit/200e7d10c1cbffeeeae95434b4ae8f2d6b69b8a0 ))
* **docs:** clean up footer llms.txt links ([a4d4d36 ](https://github.com/stirling-image/stirling-image/commit/a4d4d368286a80decf73563ca6d7e7cae119099a ))
* **docs:** ignore localhost dead links in VitePress build ([5c4b2a5 ](https://github.com/stirling-image/stirling-image/commit/5c4b2a59d3a9f1fa2dd428fd626f2bbbb9e3fea6 ))
* **docs:** remove hero logo from home page ([d3f6bac ](https://github.com/stirling-image/stirling-image/commit/d3f6bac62b7e01e3a39371a1a52d865909412117 ))
* handle migration race condition in concurrent test workers ([ce51065 ](https://github.com/stirling-image/stirling-image/commit/ce5106524333b9bc7ee214b699d76e4b52371519 ))
* make port 1349 the UI port in all modes ([80bb0e2 ](https://github.com/stirling-image/stirling-image/commit/80bb0e29a064ad8b4787eb83b11333f67ffbdc8a ))
* move health diagnostics behind admin auth ([818e587 ](https://github.com/stirling-image/stirling-image/commit/818e5877a773e6af48f9530199c6fa52e207bd50 ))
* **ocr:** update PaddleOCR for v3 API and add Tesseract fallback ([f71c3c8 ](https://github.com/stirling-image/stirling-image/commit/f71c3c8c05bc7203d37a46743bebb62b79c8ac51 ))
* pipeline only shows compatible tools and displays errors ([0410bf3 ](https://github.com/stirling-image/stirling-image/commit/0410bf34610aa56391615ab3a95ea77a12668743 ))
* prevent pipeline step settings from resetting on collapse ([9acbedf ](https://github.com/stirling-image/stirling-image/commit/9acbedf4b75c6314f659e94f9d0721a40595201d ))
* prevent stale closure in pipeline step callbacks ([8b20fef ](https://github.com/stirling-image/stirling-image/commit/8b20fef2d8123411faa2c2379693136af6b0f9ba ))
* prevent useAuth infinite loop causing rate limit storms ([3b4f522 ](https://github.com/stirling-image/stirling-image/commit/3b4f522bf4d63109254edc22baca568fdfd7dd98 ))
* Python bridge fallback only on missing venv, not script errors ([818d2ac ](https://github.com/stirling-image/stirling-image/commit/818d2acd9471295408198a37b6d40bd63795fe17 ))
* reject HTML tags in settings API to prevent stored XSS ([8a62093 ](https://github.com/stirling-image/stirling-image/commit/8a6209313052371c123c5996cb41b9e431251874 ))
* remove explicit pnpm version from CI to avoid conflict with packageManager ([8aa4c35 ](https://github.com/stirling-image/stirling-image/commit/8aa4c35db0d8fc5900acd496116e72b768c2e568 ))
* remove Google Drive coming soon placeholder from files nav ([658954e ](https://github.com/stirling-image/stirling-image/commit/658954ea19e17d1af83d45229ec40397de376042 ))
* resolve 3 critical UX bugs - home upload, auth, and form submit ([de82900 ](https://github.com/stirling-image/stirling-image/commit/de829003add3758024962ca3cc9b7a111688ca1b ))
* resolve pipeline step race condition and infinite re-render loop ([aa1f87f ](https://github.com/stirling-image/stirling-image/commit/aa1f87fc91e0b5edd93c6720fcc54a839e51893a ))
* resolve test failures from shared DB race conditions ([b474480 ](https://github.com/stirling-image/stirling-image/commit/b474480698695cda2eaf2c9ae642ac3ffd15d007 ))
* resolve tsx not found in AI docs updater workflow ([b803b0e ](https://github.com/stirling-image/stirling-image/commit/b803b0e443b54bbca33cf88fe1ab38eeddd38baf ))
* resolve TypeScript Uint8Array type error with fflate ([1d35db9 ](https://github.com/stirling-image/stirling-image/commit/1d35db98bf359c07779522c30b00d8c7a9d3cb89 ))
* restore APP_VERSION import used by health endpoint ([7dfa7a2 ](https://github.com/stirling-image/stirling-image/commit/7dfa7a295de407f45832b68a2ef64acf2f21205f ))
* setError(null) was overriding setProcessing(true) ([b5cc452 ](https://github.com/stirling-image/stirling-image/commit/b5cc45207758c25867833fad961744a37df36fda ))
* show checkerboard behind transparent images in before/after slider ([2e29501 ](https://github.com/stirling-image/stirling-image/commit/2e29501ae6f1652cc3d0e9193863aeddb18513af ))
* simplify public health to static response, add 403 test ([4577d5c ](https://github.com/stirling-image/stirling-image/commit/4577d5c30ea53c72b02490b78b6765295e55213a ))
* streamline CI/CD — remove broken AI docs updater, fix Docker publish ([4f984c8 ](https://github.com/stirling-image/stirling-image/commit/4f984c83acc4bfaa5b9479d80e2bdda05f4a2ccc ))
* surface hidden errors and add batch rejection tests ([4a50428 ](https://github.com/stirling-image/stirling-image/commit/4a504281a34561b47b60d00edaf8914f5a8e0197 ))
* switch README Docker references from GHCR to Docker Hub ([fb84f5c ](https://github.com/stirling-image/stirling-image/commit/fb84f5ce8d175e568cce20caddcf79832d0bb973 ))
* sync stepsRef during render, not useEffect ([748ac60 ](https://github.com/stirling-image/stirling-image/commit/748ac607bc71892c588e6a1795d258d4fc7f3413 ))
* **test:** add missing PNG fixture files to repo ([8474b0e ](https://github.com/stirling-image/stirling-image/commit/8474b0ee52fe803c55247a082becc4334e83186f ))
* **test:** exclude e2e tests from vitest and fix CI test suite ([91acab9 ](https://github.com/stirling-image/stirling-image/commit/91acab9967e2b5dd7dbc7a98e667f785f3e7364e ))
* **tests:** remove temp DB cleanup that races with other test files ([b08e006 ](https://github.com/stirling-image/stirling-image/commit/b08e006512744f13b893e92e9ac20ee6299ab41c ))
* trigger browser password save prompt on password change ([565b480 ](https://github.com/stirling-image/stirling-image/commit/565b4805c7b32af66bb07543c6d3bae2865dbbdd ))
* **ui:** clean up settings, automate page, fullscreen logo, and README ([e3a8558 ](https://github.com/stirling-image/stirling-image/commit/e3a85581349b6a992939b08ede932705613d915f ))
* unify project on port 1349, improve strip-metadata and UI components ([0e7348a ](https://github.com/stirling-image/stirling-image/commit/0e7348a0bedb6c47a8025c47b377849169aa7472 ))
* **upscale:** auto-orient images before upscaling and improve UI ([8ee4d7b ](https://github.com/stirling-image/stirling-image/commit/8ee4d7b2fb3f88b2869ada8d6a6c5fb0df432e3b ))
* use BiRefNet-Lite as default model and fix JSON parsing ([2bdc367 ](https://github.com/stirling-image/stirling-image/commit/2bdc367767300e414c69636e8fef3013c9096c28 ))
* use two-pass validation in settings PUT to prevent partial writes ([813fa6b ](https://github.com/stirling-image/stirling-image/commit/813fa6b7e8d8e371959cff4d4a2a85ece4a636bb ))
* use U2-Net as default model (fast, 2s) with BiRefNet as opt-in ([fb1d366 ](https://github.com/stirling-image/stirling-image/commit/fb1d366d5fa5cb9c054deceb597a2e4a30229c8c ))
* white screen crash when uploading photos with null GPS EXIF data ([70c73d8 ](https://github.com/stirling-image/stirling-image/commit/70c73d85c992bc724c6b18a2d43789871b318e78 ))
### Features
* accept clientJobId in batch endpoint for SSE progress correlation ([2514078 ](https://github.com/stirling-image/stirling-image/commit/2514078ea1feb8e44296e226e37e8e379a20473a ))
* add authentication with default admin user ([3cb7123 ](https://github.com/stirling-image/stirling-image/commit/3cb712307011f0992783d421c5ffc8b4957bd6f5 ))
* add automatic workspace file cleanup cron ([8bda220 ](https://github.com/stirling-image/stirling-image/commit/8bda22033f511cef7304725e8887e10faf5e0e9d ))
* add CSS transform props to ImageViewer for live rotate/flip preview ([113bb75 ](https://github.com/stirling-image/stirling-image/commit/113bb757333e9ad809a401000f3b6b34fa1ef415 ))
* add CSS transform props to ImageViewer for live rotate/flip preview ([267da78 ](https://github.com/stirling-image/stirling-image/commit/267da7857743898e612ba5bb80e24985664bd311 ))
* add Fastify API server with health check and env config ([1e7fb11 ](https://github.com/stirling-image/stirling-image/commit/1e7fb11da0fac730ccd1dc6f8a1a99a3abeaf945 ))
* add forced password change page on first login ([01cd1d9 ](https://github.com/stirling-image/stirling-image/commit/01cd1d9f71427319284579b438ad08ede56517a6 ))
* add format tools (SVG-to-raster, vectorize, GIF) and optimization (rename, favicon, image-to-PDF) ([b88d0d0 ](https://github.com/stirling-image/stirling-image/commit/b88d0d0af8285ce6e802713897de7d262bcd8a8b ))
* add generic tool page template with settings panel and dropzone ([de3d544 ](https://github.com/stirling-image/stirling-image/commit/de3d544ab6e199b3452fb24ba9a987dc9abc3648 ))
* add image-engine and ai stub packages ([19e4820 ](https://github.com/stirling-image/stirling-image/commit/19e48203bb14e4061a677fc9e760a15b01ac366f ))
* add layout tools (collage, splitting, border/frame) ([b8aba17 ](https://github.com/stirling-image/stirling-image/commit/b8aba1719c4ca99fe4a26065dae796c1a4233155 ))
* add live preview callback to RotateSettings, rename button to Apply ([31a9439 ](https://github.com/stirling-image/stirling-image/commit/31a943962d46fab1eb1efd9f605fc5a0144ddd87 ))
* add live preview callback to RotateSettings, rename button to Apply ([ec192e3 ](https://github.com/stirling-image/stirling-image/commit/ec192e3d96d864e3ce47e991ba1c72d6a4ee7cea ))
* add login page with split layout matching Stirling-PDF style ([b7900ed ](https://github.com/stirling-image/stirling-image/commit/b7900ed4efb467a34dd3b71dc578416120f7746c ))
* add multi-stage Docker build with Python ML dependencies ([5c7d1e1 ](https://github.com/stirling-image/stirling-image/commit/5c7d1e1f3d7e32642c9ba3053610138d73cb22d7 ))
* add MultiImageViewer with arrow navigation and filmstrip ([815a8ed ](https://github.com/stirling-image/stirling-image/commit/815a8ed419b82aadec4e07ef4456e9e96b84b65f ))
* add password generator and browser save prompt on change-password page ([7c76c2a ](https://github.com/stirling-image/stirling-image/commit/7c76c2a2a0116de8418b0438a3859fc1add419e3 ))
* add Phase 4 AI tools with Python bridge and 6 new tools ([5524939 ](https://github.com/stirling-image/stirling-image/commit/5524939b6fae9471a615c2f689b2f3fa68190700 ))
* add privacy policy page and fix CSP blocking API docs ([7f17cb9 ](https://github.com/stirling-image/stirling-image/commit/7f17cb98ce4b6979f18c34e3a3a94b79fc462e82 ))
* add processAllFiles batch method to tool processor hook ([846a51a ](https://github.com/stirling-image/stirling-image/commit/846a51a9fdf4e8fc4c1b9673f13acde646ae0ca9 ))
* add replace-color tool and update tool page routing ([9c55dd3 ](https://github.com/stirling-image/stirling-image/commit/9c55dd32c42e0f8f2f129a2ceccc9b7f6e823de8 ))
* add semantic-release for automated versioning and help dialog ([4807bd2 ](https://github.com/stirling-image/stirling-image/commit/4807bd27260aab512d8c71d1b635b71d644b6221 ))
* add shared package with types, tool definitions, and constants ([f210de1 ](https://github.com/stirling-image/stirling-image/commit/f210de1a130a6307ff3639c8ccf573950ce0e460 ))
* add SideBySideComparison component for resize results ([28a8b10 ](https://github.com/stirling-image/stirling-image/commit/28a8b10fa15fa216d7f53256bea9461650358fb1 ))
* add SideBySideComparison component for resize results ([271cab6 ](https://github.com/stirling-image/stirling-image/commit/271cab647bb41872c5e205d6236e35eb7fad0810 ))
* add SQLite database with Drizzle ORM schema and migrations ([a24c6dd ](https://github.com/stirling-image/stirling-image/commit/a24c6dd014ebec2af1cf5d8f17c2b7a8a4e6715c ))
* add Stirling-PDF-style layout with sidebar, tool panel, dropzone, and theme toggle ([e920021 ](https://github.com/stirling-image/stirling-image/commit/e920021da1cc6e5fdb4e479205fe0861567621c7 ))
* add Swagger/OpenAPI documentation at /api/docs ([4069f4d ](https://github.com/stirling-image/stirling-image/commit/4069f4db42e6ed8700b705ff4da32c6dab8f0197 ))
* add theme system with dark/light/system support and persistence ([541e495 ](https://github.com/stirling-image/stirling-image/commit/541e49576ced03c8eafe5a8c2d6994da21606094 ))
* add ThumbnailStrip filmstrip component ([6521d70 ](https://github.com/stirling-image/stirling-image/commit/6521d702385f23a7cb9312c1661541943bfe2e03 ))
* add utility tools (image info, compare, duplicates, color palette, QR, barcode) ([0c3c64e ](https://github.com/stirling-image/stirling-image/commit/0c3c64eeace536684345e1c9822481e282577796 ))
* add Vite + React SPA with Tailwind CSS and routing ([5fa012e ](https://github.com/stirling-image/stirling-image/commit/5fa012e44b32984e9c163cafed04eb89d3dc6436 ))
* add watermark, text overlay, and image composition tools ([aeaf783 ](https://github.com/stirling-image/stirling-image/commit/aeaf783ee412acaa38c81b090445570769f4cec8 ))
* add worker threads, persistent Python sidecar, graceful shutdown, and architectural improvements ([1cbdfa1 ](https://github.com/stirling-image/stirling-image/commit/1cbdfa15900a58a5db23361167d3ed71d59bf189 ))
* **adjustments:** add real-time live preview for all color tools ([f357b18 ](https://github.com/stirling-image/stirling-image/commit/f357b18ced8757da0a6c34f18541bb8875c2199a ))
* **ai:** add emit_progress() calls to all Python AI scripts ([7238429 ](https://github.com/stirling-image/stirling-image/commit/723842988b39a8d9ea4f5b0cdd97569ff0c65f68 ))
* **ai:** add onProgress callback to all AI wrapper functions ([acb230c ](https://github.com/stirling-image/stirling-image/commit/acb230cc98193766fc978098c12dfedf08a0a339 ))
* **ai:** rewrite bridge.ts to stream stderr progress via spawn ([7d74ddd ](https://github.com/stirling-image/stirling-image/commit/7d74ddd3a6a466f1863412b36501c663fd642194 ))
* **api,web:** add batch processing with ZIP download and SSE progress ([ce64116 ](https://github.com/stirling-image/stirling-image/commit/ce641168c1db26b184480d588184205373a3e397 ))
* **api:** add all remaining endpoints to OpenAPI spec ([9ed1090 ](https://github.com/stirling-image/stirling-image/commit/9ed109065189f20545eb24893c2c0b9332e40249 ))
* **api:** add all tool endpoints to OpenAPI spec ([2bf8689 ](https://github.com/stirling-image/stirling-image/commit/2bf86894d0005ff4c273334699c30de1fcb38ee6 ))
* **api:** add generic tool route factory for all image tools ([d53f673 ](https://github.com/stirling-image/stirling-image/commit/d53f6733b8b5d44754c9525eae57aaba928590b7 ))
* **api:** add llms.txt and llms-full.txt endpoints ([cff1930 ](https://github.com/stirling-image/stirling-image/commit/cff1930920c488fc853eab5aa36128fac19b3bf5 ))
* **api:** add logo upload/serve/delete routes with tests ([6a13065 ](https://github.com/stirling-image/stirling-image/commit/6a1306570660d4962f89e741dfb684d2ed0e7f6c ))
* **api:** add multipart file upload, workspace management, and download routes ([ece341e ](https://github.com/stirling-image/stirling-image/commit/ece341e8c49be8d1def42834c01b5a7725b55d9c ))
* **api:** add OpenAPI 3.1 spec skeleton with common schemas ([9488201 ](https://github.com/stirling-image/stirling-image/commit/948820180663783d463a07f966dd4336c1a7c503 ))
* **api:** add persistent file management helpers to frontend api module ([8a3a731 ](https://github.com/stirling-image/stirling-image/commit/8a3a731267f4e3cd84a01a78d89975197ce2ebad ))
* **api:** add pipeline execution, save, and list endpoints ([263447a ](https://github.com/stirling-image/stirling-image/commit/263447a81e9db7ef3bc840e69b5c9b9ad0d88c86 ))
* **api:** add resize, crop, rotate, convert, compress, metadata, and color tool routes ([37112af ](https://github.com/stirling-image/stirling-image/commit/37112af779d491e8f8d585d6ade9e5a8d4fafba0 ))
* **api:** add Scalar docs route and install dependency ([abb2916 ](https://github.com/stirling-image/stirling-image/commit/abb2916233de85e62675e609b9d497dcc0a01882 ))
* **api:** add SingleFileProgress type and SSE update function ([7eddac5 ](https://github.com/stirling-image/stirling-image/commit/7eddac5119d1db3cbf831c735c5b78f0c92728ef ))
* **api:** add teams CRUD routes and update auth team references ([ab370a7 ](https://github.com/stirling-image/stirling-image/commit/ab370a74fefebc8735e337f9b42e48ab6625c5b4 ))
* **api:** add tool filtering and DB-backed cleanup settings ([acfff75 ](https://github.com/stirling-image/stirling-image/commit/acfff754b54b5f9be474c6db6eb39b3cbf91fc21 ))
* **api:** add user files CRUD routes at /api/v1/files/* ([4e2aa58 ](https://github.com/stirling-image/stirling-image/commit/4e2aa5876701ef56514957a30fe63c27c615cf05 ))
* **api:** register docs route in server and test helper ([849878e ](https://github.com/stirling-image/stirling-image/commit/849878e72fc0e5cb3e775afeea802dac933c4e13 ))
* **api:** wire AI route handlers to SSE progress via clientJobId ([27600a4 ](https://github.com/stirling-image/stirling-image/commit/27600a431805d54b32875dbe5a58f05cfcdbe2a1 ))
* **branding:** add faceted gem SVG logo assets ([0214ac1 ](https://github.com/stirling-image/stirling-image/commit/0214ac11b1ba4142349c09fd2465a425b4e8dd6b ))
* **branding:** add favicon and meta tags to index.html ([0364927 ](https://github.com/stirling-image/stirling-image/commit/036492725eea6cb6b4c0aff307edeee8516ec280 ))
* **branding:** add OG social preview image ([dcd926c ](https://github.com/stirling-image/stirling-image/commit/dcd926c57e9877c2b47e70c494b679f0c00d93d6 ))
* **branding:** add PWA manifest and PNG logo assets ([26cc183 ](https://github.com/stirling-image/stirling-image/commit/26cc18342fb6d4027f2130b198090469e27ef797 ))
* **branding:** show gem icon in app header as default logo ([39dfb93 ](https://github.com/stirling-image/stirling-image/commit/39dfb93679765366253115240adcbc573e83b8e7 ))
* conditional result views — side-by-side for resize, live preview for rotate ([989e8dc ](https://github.com/stirling-image/stirling-image/commit/989e8dc6e47fe123d6333dddf4431a01623e0437 ))
* conditional result views — side-by-side for resize, live preview for rotate ([59a57f3 ](https://github.com/stirling-image/stirling-image/commit/59a57f3a00bbd0c6331d1165594ad4266ce3b536 ))
* **crop:** add CropCanvas component with visual overlay, grid, and keyboard controls ([1a076be ](https://github.com/stirling-image/stirling-image/commit/1a076be9b2cc5f434296f2739a395321368c2177 ))
* **crop:** add react-image-crop dependency ([31d426f ](https://github.com/stirling-image/stirling-image/commit/31d426ff6f02965d20e75e85ff15a8cbc1d1df0b ))
* **crop:** redesign CropSettings with aspect presets, pixel inputs, and grid toggle ([c2c256a ](https://github.com/stirling-image/stirling-image/commit/c2c256a180640cf046bd1bc46b05065171a4c2dc ))
* **crop:** wire CropCanvas and CropSettings into tool-page with bidirectional state ([786a671 ](https://github.com/stirling-image/stirling-image/commit/786a671c39859ae0bf1f8732c2ff4efe210d2466 ))
* **db:** add teams table and migration ([926b52d ](https://github.com/stirling-image/stirling-image/commit/926b52d33045dc1f15192bb65d4f005f6c82ce00 ))
* **db:** add userFiles table and migration ([dda37e9 ](https://github.com/stirling-image/stirling-image/commit/dda37e90cc294140c236332563befae0a3b02852 ))
* **docs:** add gem favicon to VitePress site ([42ec0f2 ](https://github.com/stirling-image/stirling-image/commit/42ec0f2490267f2e3730764539bdd2920b7b3793 ))
* **docs:** add gem logo to GitHub Pages nav bar and home hero ([98478e2 ](https://github.com/stirling-image/stirling-image/commit/98478e271934c8b3deb1b3003d88fe1a165e75a0 ))
* **docs:** add llms.txt and llms-full.txt to GitHub Pages ([e6dc7b0 ](https://github.com/stirling-image/stirling-image/commit/e6dc7b0a18d3d022de4e2f0b971bf25678042b3a ))
* **docs:** add llms.txt links to GitHub Pages footer ([c59e4a0 ](https://github.com/stirling-image/stirling-image/commit/c59e4a06686db62ad8ec134ec1c97080673fbcb3 ))
* **env:** add FILES_STORAGE_PATH config variable ([4927f57 ](https://github.com/stirling-image/stirling-image/commit/4927f574badda883ad72ba05c30a8d9fae973ee6 ))
* **erase-object:** replace mask upload with in-browser brush painting ([40656a0 ](https://github.com/stirling-image/stirling-image/commit/40656a0452109c1d6ea2441b2735b0ffaf4f3867 ))
* extract auto-orient utility and expand test coverage ([e5086ad ](https://github.com/stirling-image/stirling-image/commit/e5086ada6e2f4402973f203b726578dd42da4a32 ))
* **files:** add Files page with nav, list, details, upload, and routing ([788b8c8 ](https://github.com/stirling-image/stirling-image/commit/788b8c8bad8cf6800137f4764f5a50ac80845f2f ))
* **files:** add mobile layout for Files page ([c99f43f ](https://github.com/stirling-image/stirling-image/commit/c99f43fe60aac2a7babeb7cea39e140281936009 ))
* **files:** wire serverFileId for version tracking ([20f153d ](https://github.com/stirling-image/stirling-image/commit/20f153d611c9dec478ab89cd050c6c65b0e41287 ))
* harden auth, security headers, SVG sanitization, and pipeline ownership ([432cc92 ](https://github.com/stirling-image/stirling-image/commit/432cc92471b73b73ab9d1be4a82a71d3ed3a88ad ))
* **i18n:** add translation keys for settings phase 1 ([ffb676d ](https://github.com/stirling-image/stirling-image/commit/ffb676d648027804e653b868139f349b5a3c6c96 ))
* **image-engine:** add Sharp wrapper with 14 image operations ([ccac5b8 ](https://github.com/stirling-image/stirling-image/commit/ccac5b885c327656eb76241a74be7e510ca32903 ))
* **image-to-pdf:** add live PDF page preview with margin visualization ([ddde152 ](https://github.com/stirling-image/stirling-image/commit/ddde152545456770ec4a97418968c2ad309a88e0 ))
* implement Files page with persistent storage and version tracking ([62fbb54 ](https://github.com/stirling-image/stirling-image/commit/62fbb5484c669b74132b4ecd23576bf0ba5b50b2 ))
* initialize Turborepo monorepo with pnpm workspaces ([58fbb38 ](https://github.com/stirling-image/stirling-image/commit/58fbb38fd88973522ac894dc6237aeabd7849b64 ))
* integrate MultiImageViewer and multi-file UX into tool page ([3796533 ](https://github.com/stirling-image/stirling-image/commit/37965338228a2fca3623718a7db2f8757a464651 ))
* make AI tools pipeline-compatible and add search to tool picker ([c48bfba ](https://github.com/stirling-image/stirling-image/commit/c48bfba879f55591e03a0918d9b8de9618cc8dc0 ))
* merge multi-image UX — batch processing, filmstrip navigation, resize/rotate redesign ([80756d1 ](https://github.com/stirling-image/stirling-image/commit/80756d15917a877b21a900d282bb6522ae76c2e2 ))
* multi-arch Docker support, security hardening, and test improvements ([6cfa3b0 ](https://github.com/stirling-image/stirling-image/commit/6cfa3b0c38d81a19b230e1bdbad750dce2783afb ))
* multi-file metadata display with per-file caching ([474b4a9 ](https://github.com/stirling-image/stirling-image/commit/474b4a941e1be43887beac8d2ec57eb703cba260 ))
* **pipeline:** add inline settings configuration for automation steps ([adc7e1c ](https://github.com/stirling-image/stirling-image/commit/adc7e1c0370df1687b0660bdff279c90ac9d0871 ))
* production Docker, Playwright tests, settings API, and bug fixes ([ce03aad ](https://github.com/stirling-image/stirling-image/commit/ce03aad10f00f173a3b82a478288626ee8f00e32 ))
* replace model dropdown with intuitive subject/quality selector in remove-bg ([9aa0371 ](https://github.com/stirling-image/stirling-image/commit/9aa0371a1452540557aca9f2195032c5c16ce3fb ))
* rewrite file-store with FileEntry model for multi-image support ([8844b44 ](https://github.com/stirling-image/stirling-image/commit/8844b44fff2abfbe3262a113dfc35d83367add05 ))
* rewrite resize settings with tab-based UI (presets, custom, scale) ([02ef3e6 ](https://github.com/stirling-image/stirling-image/commit/02ef3e6468b36303dfdbc61e18c14dc5eb68d957 ))
* rewrite resize settings with tab-based UI (presets, custom, scale) ([bc105fd ](https://github.com/stirling-image/stirling-image/commit/bc105fd261de3c11b279557dba98aaad65214f42 ))
* **rotate:** add editable angle input and fine-tune +/- buttons ([bf62820 ](https://github.com/stirling-image/stirling-image/commit/bf6282006489a4cadcd849b476e97239e3624673 ))
* serve React SPA from Fastify in production mode ([1d8761a ](https://github.com/stirling-image/stirling-image/commit/1d8761a976f2e1006526496e2fd67c27be757991 ))
* **storage:** add file storage helpers module ([fbca20d ](https://github.com/stirling-image/stirling-image/commit/fbca20d78c213e0b7f00f6c59eae4af32123a587 ))
* **stores:** add Zustand store for Files page state management ([24644c1 ](https://github.com/stirling-image/stirling-image/commit/24644c1c1052146a2b581ffc3a791a9276fab6a1 ))
* **tool-factory:** auto-save results to persistent file store when fileId provided ([bf6c30c ](https://github.com/stirling-image/stirling-image/commit/bf6c30c3c0d9beeaa24a7b7b998de9354ec7e353 ))
* **ui:** add teams, tools, feature flags, temp files, logo to settings dialog ([4b2621d ](https://github.com/stirling-image/stirling-image/commit/4b2621d9f2c5fcc930baf9ed1a6b555de77f0b93 ))
* upgrade to BiRefNet SOTA background removal model ([77ee846 ](https://github.com/stirling-image/stirling-image/commit/77ee8469d89fa29f29fbba1360e139b2a502d70f ))
* **web:** add before/after image comparison slider component ([1a22522 ](https://github.com/stirling-image/stirling-image/commit/1a22522349619b726630467b751f08775f16bd07 ))
* **web:** add fullscreen tool grid view ([6d67b10 ](https://github.com/stirling-image/stirling-image/commit/6d67b106ca5fd5a475c3d2cac4b6aecd23fc06cd ))
* **web:** add i18n architecture with English translations ([cd020c2 ](https://github.com/stirling-image/stirling-image/commit/cd020c2342d430480a43a7f6469034ca6f9ef1ed ))
* **web:** add keyboard shortcuts for tool navigation ([939bc2e ](https://github.com/stirling-image/stirling-image/commit/939bc2e001a509044f96f9557434c255abb47adc ))
* **web:** add mobile responsive layout with bottom navigation ([580208d ](https://github.com/stirling-image/stirling-image/commit/580208de83349362b27b3a8a6db3370fc2770d0e ))
* **web:** add pipeline builder UI with saved automations and templates ([60541c1 ](https://github.com/stirling-image/stirling-image/commit/60541c1765b3c31679d345dbde3c00a7085e8712 ))
* **web:** add ProgressCard component ([01d5d66 ](https://github.com/stirling-image/stirling-image/commit/01d5d66466a7bcf4a0c0f454f7b4d58f7e1e7801 ))
* **web:** add ProgressCard to non-AI tool settings (Group A) ([5c64b30 ](https://github.com/stirling-image/stirling-image/commit/5c64b306ead8b6214dee6d51e8dae25fb47ff7e8 ))
* **web:** add settings dialog with general, security, API keys, and about sections ([0cd3d71 ](https://github.com/stirling-image/stirling-image/commit/0cd3d71a631b3573cda24f4b0db5ff9d77b85abd ))
* **web:** add Stirling-PDF-style file preview, review panel, and tool chaining UX ([ab0b034 ](https://github.com/stirling-image/stirling-image/commit/ab0b0344b964eb7481af0d2df0420db99aea6428 ))
* **web:** add tool settings UI for all core image tools ([8964bc5 ](https://github.com/stirling-image/stirling-image/commit/8964bc5cd89d6e08ed6ba408b1c64b7bed9fb3cb ))
* **web:** migrate AI tool settings to ProgressCard ([dbd3bf7 ](https://github.com/stirling-image/stirling-image/commit/dbd3bf737e4692279ba5b7c3d860779193a21b5f ))
* **web:** redesign home page upload flow and add auth guard ([06c5ee5 ](https://github.com/stirling-image/stirling-image/commit/06c5ee59962fb6a2e520b72f487061f8d58e8648 ))
* **web:** rewrite useToolProcessor with XHR upload progress and SSE ([60945fd ](https://github.com/stirling-image/stirling-image/commit/60945fd3b3674d2026f3f717cd3d123951126933 ))
* wire up batch processing across tool settings components ([9e2c28f ](https://github.com/stirling-image/stirling-image/commit/9e2c28f19124fca4bc4f55c0997e2314170ae478 ))
2026-03-30 00:28:23 +00:00
semantic-release-bot
8f98b745ff
chore(release): 0.19.0 [skip ci]
...
# [0.19.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.18.0...v0.19.0 ) (2026-03-29)
### Features
* add privacy policy page and fix CSP blocking API docs ([7f17cb9 ](https://github.com/siddharthksah/Stirling-Image/commit/7f17cb98ce4b6979f18c34e3a3a94b79fc462e82 ))
2026-03-29 15:57:41 +00:00
semantic-release-bot
d7a917b995
chore(release): 0.18.0 [skip ci]
...
# [0.18.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.17.7...v0.18.0 ) (2026-03-29)
### Features
* add worker threads, persistent Python sidecar, graceful shutdown, and architectural improvements ([1cbdfa1 ](https://github.com/siddharthksah/Stirling-Image/commit/1cbdfa15900a58a5db23361167d3ed71d59bf189 ))
2026-03-29 09:24:13 +00:00
Siddharth Kumar Sah
1cbdfa1590
feat: add worker threads, persistent Python sidecar, graceful shutdown, and architectural improvements
...
- Graceful shutdown: SIGTERM/SIGINT handlers drain HTTP, stop workers, close DB
- Thumbnail caching: disk-cached thumbnails with immutable Cache-Control headers
- Worker thread pool: Piscina offloads Sharp processing off the main event loop
- Persistent Python dispatcher: pre-imports ML libraries, eliminates cold-start latency
- Tool page registry: declarative tool-to-component mapping replaces 750-line switch
- File store cleanup: remove dead derived fields, stable files array reference
- Job persistence: progress written to SQLite jobs table, stale jobs recovered on startup
2026-03-29 17:23:41 +08:00
semantic-release-bot
7c71c7c483
chore(release): 0.17.7 [skip ci]
...
## [0.17.7](https://github.com/siddharthksah/Stirling-Image/compare/v0.17.6...v0.17.7 ) (2026-03-28)
### Bug Fixes
* move health diagnostics behind admin auth ([818e587 ](https://github.com/siddharthksah/Stirling-Image/commit/818e5877a773e6af48f9530199c6fa52e207bd50 ))
* reject HTML tags in settings API to prevent stored XSS ([8a62093 ](https://github.com/siddharthksah/Stirling-Image/commit/8a6209313052371c123c5996cb41b9e431251874 ))
* simplify public health to static response, add 403 test ([4577d5c ](https://github.com/siddharthksah/Stirling-Image/commit/4577d5c30ea53c72b02490b78b6765295e55213a ))
* switch README Docker references from GHCR to Docker Hub ([fb84f5c ](https://github.com/siddharthksah/Stirling-Image/commit/fb84f5ce8d175e568cce20caddcf79832d0bb973 ))
* use two-pass validation in settings PUT to prevent partial writes ([813fa6b ](https://github.com/siddharthksah/Stirling-Image/commit/813fa6b7e8d8e371959cff4d4a2a85ece4a636bb ))
2026-03-28 11:08:45 +00:00
semantic-release-bot
daf942ba89
chore(release): 0.17.6 [skip ci]
...
## [0.17.6](https://github.com/siddharthksah/Stirling-Image/compare/v0.17.5...v0.17.6 ) (2026-03-28)
### Bug Fixes
* resolve pipeline step race condition and infinite re-render loop ([aa1f87f ](https://github.com/siddharthksah/Stirling-Image/commit/aa1f87fc91e0b5edd93c6720fcc54a839e51893a ))
* show checkerboard behind transparent images in before/after slider ([2e29501 ](https://github.com/siddharthksah/Stirling-Image/commit/2e29501ae6f1652cc3d0e9193863aeddb18513af ))
2026-03-28 10:35:02 +00:00
semantic-release-bot
b4f0fed679
chore(release): 0.17.5 [skip ci]
...
## [0.17.5](https://github.com/siddharthksah/Stirling-Image/compare/v0.17.4...v0.17.5 ) (2026-03-28)
### Bug Fixes
* sync stepsRef during render, not useEffect ([748ac60 ](https://github.com/siddharthksah/Stirling-Image/commit/748ac607bc71892c588e6a1795d258d4fc7f3413 ))
2026-03-28 09:02:46 +00:00
semantic-release-bot
04d412873d
chore(release): 0.17.4 [skip ci]
...
## [0.17.4](https://github.com/siddharthksah/Stirling-Image/compare/v0.17.3...v0.17.4 ) (2026-03-28)
### Bug Fixes
* prevent stale closure in pipeline step callbacks ([8b20fef ](https://github.com/siddharthksah/Stirling-Image/commit/8b20fef2d8123411faa2c2379693136af6b0f9ba ))
2026-03-28 08:43:23 +00:00