semantic-release-bot
aea0974600
chore(release): 0.17.2 [skip ci]
...
## [0.17.2](https://github.com/siddharthksah/Stirling-Image/compare/v0.17.1...v0.17.2 ) (2026-03-28)
### Bug Fixes
* prevent pipeline step settings from resetting on collapse ([9acbedf ](https://github.com/siddharthksah/Stirling-Image/commit/9acbedf4b75c6314f659e94f9d0721a40595201d ))
2026-03-28 08:18:05 +00:00
semantic-release-bot
e5238f5661
chore(release): 0.17.1 [skip ci]
...
## [0.17.1](https://github.com/siddharthksah/Stirling-Image/compare/v0.17.0...v0.17.1 ) (2026-03-28)
### Bug Fixes
* add remove-background settings to pipeline step configurator ([017a715 ](https://github.com/siddharthksah/Stirling-Image/commit/017a71562ad7b15d7d1abec6cee9f8ab73db2b34 ))
2026-03-28 07:32:56 +00:00
semantic-release-bot
d5add549af
chore(release): 0.17.0 [skip ci]
...
# [0.17.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.16.4...v0.17.0 ) (2026-03-28)
### Features
* make AI tools pipeline-compatible and add search to tool picker ([c48bfba ](https://github.com/siddharthksah/Stirling-Image/commit/c48bfba879f55591e03a0918d9b8de9618cc8dc0 ))
2026-03-28 07:09:46 +00:00
semantic-release-bot
6d14e83dcb
chore(release): 0.16.4 [skip ci]
...
## [0.16.4](https://github.com/siddharthksah/Stirling-Image/compare/v0.16.3...v0.16.4 ) (2026-03-28)
### Bug Fixes
* surface hidden errors and add batch rejection tests ([4a50428 ](https://github.com/siddharthksah/Stirling-Image/commit/4a504281a34561b47b60d00edaf8914f5a8e0197 ))
2026-03-28 06:45:35 +00:00
semantic-release-bot
2622ae7bdf
chore(release): 0.16.3 [skip ci]
...
## [0.16.3](https://github.com/siddharthksah/Stirling-Image/compare/v0.16.2...v0.16.3 ) (2026-03-28)
### Bug Fixes
* remove Google Drive coming soon placeholder from files nav ([658954e ](https://github.com/siddharthksah/Stirling-Image/commit/658954ea19e17d1af83d45229ec40397de376042 ))
2026-03-28 06:40:48 +00:00
semantic-release-bot
51684c0cd2
chore(release): 0.16.2 [skip ci]
...
## [0.16.2](https://github.com/siddharthksah/Stirling-Image/compare/v0.16.1...v0.16.2 ) (2026-03-28)
### Bug Fixes
* pipeline only shows compatible tools and displays errors ([0410bf3 ](https://github.com/siddharthksah/Stirling-Image/commit/0410bf34610aa56391615ab3a95ea77a12668743 ))
2026-03-28 06:39:17 +00:00
semantic-release-bot
1703dcbcfe
chore(release): 0.16.1 [skip ci]
...
## [0.16.1](https://github.com/siddharthksah/Stirling-Image/compare/v0.16.0...v0.16.1 ) (2026-03-28)
### Bug Fixes
* trigger browser password save prompt on password change ([565b480 ](https://github.com/siddharthksah/Stirling-Image/commit/565b4805c7b32af66bb07543c6d3bae2865dbbdd ))
2026-03-28 06:24:41 +00:00
semantic-release-bot
006b7c4509
chore(release): 0.16.0 [skip ci]
...
# [0.16.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.15.0...v0.16.0 ) (2026-03-28)
### Features
* add password generator and browser save prompt on change-password page ([7c76c2a ](https://github.com/siddharthksah/Stirling-Image/commit/7c76c2a2a0116de8418b0438a3859fc1add419e3 ))
2026-03-28 06:13:13 +00:00
semantic-release-bot
21675623e7
chore(release): 0.15.0 [skip ci]
...
# [0.15.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.14.2...v0.15.0 ) (2026-03-28)
### Features
* add forced password change page on first login ([01cd1d9 ](https://github.com/siddharthksah/Stirling-Image/commit/01cd1d9f71427319284579b438ad08ede56517a6 ))
2026-03-28 06:02:41 +00:00
semantic-release-bot
1c8a6f10c8
chore(release): 0.14.2 [skip ci]
...
## [0.14.2](https://github.com/siddharthksah/Stirling-Image/compare/v0.14.1...v0.14.2 ) (2026-03-28)
### Bug Fixes
* **tests:** remove temp DB cleanup that races with other test files ([b08e006 ](https://github.com/siddharthksah/Stirling-Image/commit/b08e006512744f13b893e92e9ac20ee6299ab41c ))
2026-03-28 04:49:54 +00:00
semantic-release-bot
a0f68465ac
chore(release): 0.14.1 [skip ci]
...
## [0.14.1](https://github.com/siddharthksah/Stirling-Image/compare/v0.14.0...v0.14.1 ) (2026-03-28)
### Bug Fixes
* handle migration race condition in concurrent test workers ([ce51065 ](https://github.com/siddharthksah/Stirling-Image/commit/ce5106524333b9bc7ee214b699d76e4b52371519 ))
2026-03-28 03:46:26 +00:00
semantic-release-bot
fb7077cf16
chore(release): 0.14.0 [skip ci]
...
# [0.14.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.13.1...v0.14.0 ) (2026-03-28)
### Features
* multi-arch Docker support, security hardening, and test improvements ([6cfa3b0 ](https://github.com/siddharthksah/Stirling-Image/commit/6cfa3b0c38d81a19b230e1bdbad750dce2783afb ))
2026-03-28 03:19:36 +00:00
semantic-release-bot
8f09c0678b
chore(release): 0.13.1 [skip ci]
...
## [0.13.1](https://github.com/siddharthksah/Stirling-Image/compare/v0.13.0...v0.13.1 ) (2026-03-27)
### Bug Fixes
* **docs:** remove hero logo from home page ([d3f6bac ](https://github.com/siddharthksah/Stirling-Image/commit/d3f6bac62b7e01e3a39371a1a52d865909412117 ))
2026-03-27 12:55:10 +00:00
semantic-release-bot
55df7dd768
chore(release): 0.13.0 [skip ci]
...
# [0.13.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.12.1...v0.13.0 ) (2026-03-27)
### Features
* **docs:** add gem logo to GitHub Pages nav bar and home hero ([98478e2 ](https://github.com/siddharthksah/Stirling-Image/commit/98478e271934c8b3deb1b3003d88fe1a165e75a0 ))
2026-03-27 12:52:29 +00:00
semantic-release-bot
10b15bf838
chore(release): 0.12.1 [skip ci]
...
## [0.12.1](https://github.com/siddharthksah/Stirling-Image/compare/v0.12.0...v0.12.1 ) (2026-03-27)
### Bug Fixes
* **docs:** clean up footer llms.txt links ([a4d4d36 ](https://github.com/siddharthksah/Stirling-Image/commit/a4d4d368286a80decf73563ca6d7e7cae119099a ))
2026-03-27 09:11:21 +00:00
semantic-release-bot
efc96f98c4
chore(release): 0.12.0 [skip ci]
...
# [0.12.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.11.1...v0.12.0 ) (2026-03-27)
### Bug Fixes
* **api:** resolve team name lookup and show server error messages ([620b8ad ](https://github.com/siddharthksah/Stirling-Image/commit/620b8ad038506a03633ab9baf738c6c316fa4336 ))
### Features
* **docs:** add llms.txt links to GitHub Pages footer ([c59e4a0 ](https://github.com/siddharthksah/Stirling-Image/commit/c59e4a06686db62ad8ec134ec1c97080673fbcb3 ))
2026-03-27 08:42:16 +00:00
semantic-release-bot
b5721d9854
chore(release): 0.11.1 [skip ci]
...
## [0.11.1](https://github.com/siddharthksah/Stirling-Image/compare/v0.11.0...v0.11.1 ) (2026-03-27)
### Bug Fixes
* **docs:** ignore localhost dead links in VitePress build ([5c4b2a5 ](https://github.com/siddharthksah/Stirling-Image/commit/5c4b2a59d3a9f1fa2dd428fd626f2bbbb9e3fea6 ))
2026-03-27 05:54:02 +00:00
semantic-release-bot
355022d374
chore(release): 0.11.0 [skip ci]
...
# [0.11.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.10.0...v0.11.0 ) (2026-03-27)
### Bug Fixes
* **a11y:** add aria-hidden to decorative GemLogo SVG ([d47548a ](https://github.com/siddharthksah/Stirling-Image/commit/d47548a1d7d2de995c881465b79a463de20354df ))
* **api:** allow Scalar docs through auth and CSP ([a46d500 ](https://github.com/siddharthksah/Stirling-Image/commit/a46d500012e1f0724038c695a17e7dafd9be0c40 ))
* **api:** use content instead of spec.content for Scalar v1.49 API ([05854fd ](https://github.com/siddharthksah/Stirling-Image/commit/05854fd61f90a1096e1682ad021d744d178d9b9b ))
* **ui:** clean up settings, automate page, fullscreen logo, and README ([e3a8558 ](https://github.com/siddharthksah/Stirling-Image/commit/e3a85581349b6a992939b08ede932705613d915f ))
### Features
* **api:** add all remaining endpoints to OpenAPI spec ([9ed1090 ](https://github.com/siddharthksah/Stirling-Image/commit/9ed109065189f20545eb24893c2c0b9332e40249 ))
* **api:** add all tool endpoints to OpenAPI spec ([2bf8689 ](https://github.com/siddharthksah/Stirling-Image/commit/2bf86894d0005ff4c273334699c30de1fcb38ee6 ))
* **api:** add llms.txt and llms-full.txt endpoints ([cff1930 ](https://github.com/siddharthksah/Stirling-Image/commit/cff1930920c488fc853eab5aa36128fac19b3bf5 ))
* **api:** add OpenAPI 3.1 spec skeleton with common schemas ([9488201 ](https://github.com/siddharthksah/Stirling-Image/commit/948820180663783d463a07f966dd4336c1a7c503 ))
* **api:** add Scalar docs route and install dependency ([abb2916 ](https://github.com/siddharthksah/Stirling-Image/commit/abb2916233de85e62675e609b9d497dcc0a01882 ))
* **api:** register docs route in server and test helper ([849878e ](https://github.com/siddharthksah/Stirling-Image/commit/849878e72fc0e5cb3e775afeea802dac933c4e13 ))
* **branding:** add faceted gem SVG logo assets ([0214ac1 ](https://github.com/siddharthksah/Stirling-Image/commit/0214ac11b1ba4142349c09fd2465a425b4e8dd6b ))
* **branding:** add favicon and meta tags to index.html ([0364927 ](https://github.com/siddharthksah/Stirling-Image/commit/036492725eea6cb6b4c0aff307edeee8516ec280 ))
* **branding:** add OG social preview image ([dcd926c ](https://github.com/siddharthksah/Stirling-Image/commit/dcd926c57e9877c2b47e70c494b679f0c00d93d6 ))
* **branding:** add PWA manifest and PNG logo assets ([26cc183 ](https://github.com/siddharthksah/Stirling-Image/commit/26cc18342fb6d4027f2130b198090469e27ef797 ))
* **branding:** show gem icon in app header as default logo ([39dfb93 ](https://github.com/siddharthksah/Stirling-Image/commit/39dfb93679765366253115240adcbc573e83b8e7 ))
* **docs:** add gem favicon to VitePress site ([42ec0f2 ](https://github.com/siddharthksah/Stirling-Image/commit/42ec0f2490267f2e3730764539bdd2920b7b3793 ))
* **docs:** add llms.txt and llms-full.txt to GitHub Pages ([e6dc7b0 ](https://github.com/siddharthksah/Stirling-Image/commit/e6dc7b0a18d3d022de4e2f0b971bf25678042b3a ))
2026-03-27 05:51:30 +00:00
semantic-release-bot
d4d4321b98
chore(release): 0.10.0 [skip ci]
...
# [0.10.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.9.0...v0.10.0 ) (2026-03-26)
### Bug Fixes
* **ocr:** update PaddleOCR for v3 API and add Tesseract fallback ([f71c3c8 ](https://github.com/siddharthksah/Stirling-Image/commit/f71c3c8c05bc7203d37a46743bebb62b79c8ac51 ))
### Features
* **erase-object:** replace mask upload with in-browser brush painting ([40656a0 ](https://github.com/siddharthksah/Stirling-Image/commit/40656a0452109c1d6ea2441b2735b0ffaf4f3867 ))
2026-03-26 09:34:20 +00:00
Siddharth Kumar Sah
f71c3c8c05
fix(ocr): update PaddleOCR for v3 API and add Tesseract fallback
...
Fix PaddleOCR crash by removing deprecated parameters (use_angle_cls,
show_log, cls) that were removed in PaddleOCR v3. Add graceful
fallback to Tesseract when PaddleOCR fails at runtime, so users
always get OCR results without errors.
2026-03-26 17:33:42 +08:00
Siddharth Kumar Sah
40656a0452
feat(erase-object): replace mask upload with in-browser brush painting
...
Replace the external mask file upload workflow with an interactive
canvas-based brush tool. Users now paint directly on the image to
mark areas for erasure. Adds EraserCanvas component with adjustable
brush size, undo/clear, and mask export. Switch Python inpainting
from broken lama-cleaner to OpenCV cv2.inpaint (Telea algorithm).
Add before/after comparison slider after processing.
2026-03-26 17:33:17 +08:00
semantic-release-bot
563892774d
chore(release): 0.9.0 [skip ci]
...
# [0.9.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.8.2...v0.9.0 ) (2026-03-26)
### Bug Fixes
* **blur-faces:** switch from MediaPipe to OpenCV and auto-orient images ([f15102c ](https://github.com/siddharthksah/Stirling-Image/commit/f15102c632d3fcbc5d33b33fd9cfdea5e4689eb6 ))
* **docker:** add build layer caching for faster Docker rebuilds ([14c630f ](https://github.com/siddharthksah/Stirling-Image/commit/14c630ff23d973aa9d512ed87ede049ebd4b600f ))
* **upscale:** auto-orient images before upscaling and improve UI ([8ee4d7b ](https://github.com/siddharthksah/Stirling-Image/commit/8ee4d7b2fb3f88b2869ada8d6a6c5fb0df432e3b ))
### Features
* **adjustments:** add real-time live preview for all color tools ([f357b18 ](https://github.com/siddharthksah/Stirling-Image/commit/f357b18ced8757da0a6c34f18541bb8875c2199a ))
* **image-to-pdf:** add live PDF page preview with margin visualization ([ddde152 ](https://github.com/siddharthksah/Stirling-Image/commit/ddde152545456770ec4a97418968c2ad309a88e0 ))
* **rotate:** add editable angle input and fine-tune +/- buttons ([bf62820 ](https://github.com/siddharthksah/Stirling-Image/commit/bf6282006489a4cadcd849b476e97239e3624673 ))
2026-03-26 08:02:46 +00:00
Siddharth Kumar Sah
0401900a69
chore(ui): remove technical jargon and update tool count
...
Remove approximate processing times from remove-bg quality options.
Update tool count from 37 to 33 across README, settings dialog, login
page, and i18n strings to reflect the accurate count.
2026-03-26 16:02:12 +08:00
Siddharth Kumar Sah
f15102c632
fix(blur-faces): switch from MediaPipe to OpenCV and auto-orient images
...
Fix face detection failure caused by MediaPipe 0.10.33 removing the
mp.solutions API. Replace with OpenCV Haar cascade which works reliably
in headless Docker. Add autoOrient() call before detection to handle
EXIF-rotated phone photos. Remove technical jargon from UI.
2026-03-26 16:01:56 +08:00
semantic-release-bot
21e40f5bbf
chore(release): 0.8.2 [skip ci]
...
## [0.8.2](https://github.com/siddharthksah/Stirling-Image/compare/v0.8.1...v0.8.2 ) (2026-03-25)
### Bug Fixes
* **test:** add missing PNG fixture files to repo ([8474b0e ](https://github.com/siddharthksah/Stirling-Image/commit/8474b0ee52fe803c55247a082becc4334e83186f ))
* **test:** exclude e2e tests from vitest and fix CI test suite ([91acab9 ](https://github.com/siddharthksah/Stirling-Image/commit/91acab9967e2b5dd7dbc7a98e667f785f3e7364e ))
2026-03-25 17:33:09 +00:00
semantic-release-bot
bf23e83ef4
chore(release): 0.8.1 [skip ci]
...
## [0.8.1](https://github.com/siddharthksah/Stirling-Image/compare/v0.8.0...v0.8.1 ) (2026-03-25)
### Bug Fixes
* resolve test failures from shared DB race conditions ([b474480 ](https://github.com/siddharthksah/Stirling-Image/commit/b474480698695cda2eaf2c9ae642ac3ffd15d007 ))
2026-03-25 17:21:05 +00:00
semantic-release-bot
170395ae40
chore(release): 0.8.0 [skip ci]
...
# [0.8.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.7.0...v0.8.0 ) (2026-03-25)
### Bug Fixes
* **docker:** skip husky prepare script in production install ([200e7d1 ](https://github.com/siddharthksah/Stirling-Image/commit/200e7d10c1cbffeeeae95434b4ae8f2d6b69b8a0 ))
* prevent useAuth infinite loop causing rate limit storms ([3b4f522 ](https://github.com/siddharthksah/Stirling-Image/commit/3b4f522bf4d63109254edc22baca568fdfd7dd98 ))
### Features
* **api:** add logo upload/serve/delete routes with tests ([6a13065 ](https://github.com/siddharthksah/Stirling-Image/commit/6a1306570660d4962f89e741dfb684d2ed0e7f6c ))
* **api:** add persistent file management helpers to frontend api module ([8a3a731 ](https://github.com/siddharthksah/Stirling-Image/commit/8a3a731267f4e3cd84a01a78d89975197ce2ebad ))
* **api:** add teams CRUD routes and update auth team references ([ab370a7 ](https://github.com/siddharthksah/Stirling-Image/commit/ab370a74fefebc8735e337f9b42e48ab6625c5b4 ))
* **api:** add tool filtering and DB-backed cleanup settings ([acfff75 ](https://github.com/siddharthksah/Stirling-Image/commit/acfff754b54b5f9be474c6db6eb39b3cbf91fc21 ))
* **api:** add user files CRUD routes at /api/v1/files/* ([4e2aa58 ](https://github.com/siddharthksah/Stirling-Image/commit/4e2aa5876701ef56514957a30fe63c27c615cf05 ))
* **db:** add teams table and migration ([926b52d ](https://github.com/siddharthksah/Stirling-Image/commit/926b52d33045dc1f15192bb65d4f005f6c82ce00 ))
* **db:** add userFiles table and migration ([dda37e9 ](https://github.com/siddharthksah/Stirling-Image/commit/dda37e90cc294140c236332563befae0a3b02852 ))
* **env:** add FILES_STORAGE_PATH config variable ([4927f57 ](https://github.com/siddharthksah/Stirling-Image/commit/4927f574badda883ad72ba05c30a8d9fae973ee6 ))
* **files:** add Files page with nav, list, details, upload, and routing ([788b8c8 ](https://github.com/siddharthksah/Stirling-Image/commit/788b8c8bad8cf6800137f4764f5a50ac80845f2f ))
* **files:** add mobile layout for Files page ([c99f43f ](https://github.com/siddharthksah/Stirling-Image/commit/c99f43fe60aac2a7babeb7cea39e140281936009 ))
* **files:** wire serverFileId for version tracking ([20f153d ](https://github.com/siddharthksah/Stirling-Image/commit/20f153d611c9dec478ab89cd050c6c65b0e41287 ))
* **i18n:** add translation keys for settings phase 1 ([ffb676d ](https://github.com/siddharthksah/Stirling-Image/commit/ffb676d648027804e653b868139f349b5a3c6c96 ))
* implement Files page with persistent storage and version tracking ([62fbb54 ](https://github.com/siddharthksah/Stirling-Image/commit/62fbb5484c669b74132b4ecd23576bf0ba5b50b2 ))
* **storage:** add file storage helpers module ([fbca20d ](https://github.com/siddharthksah/Stirling-Image/commit/fbca20d78c213e0b7f00f6c59eae4af32123a587 ))
* **stores:** add Zustand store for Files page state management ([24644c1 ](https://github.com/siddharthksah/Stirling-Image/commit/24644c1c1052146a2b581ffc3a791a9276fab6a1 ))
* **tool-factory:** auto-save results to persistent file store when fileId provided ([bf6c30c ](https://github.com/siddharthksah/Stirling-Image/commit/bf6c30c3c0d9beeaa24a7b7b998de9354ec7e353 ))
* **ui:** add teams, tools, feature flags, temp files, logo to settings dialog ([4b2621d ](https://github.com/siddharthksah/Stirling-Image/commit/4b2621d9f2c5fcc930baf9ed1a6b555de77f0b93 ))
2026-03-25 17:12:41 +00:00
Siddharth Kumar Sah
ffb676d648
feat(i18n): add translation keys for settings phase 1
2026-03-26 01:10:51 +08:00
Siddharth Kumar Sah
585d66f0c9
refactor: rename Tool.alpha to Tool.experimental
2026-03-26 01:10:51 +08:00
semantic-release-bot
5d261398b1
chore(release): 0.7.0 [skip ci]
...
# [0.7.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.6.0...v0.7.0 ) (2026-03-24)
### Features
* harden auth, security headers, SVG sanitization, and pipeline ownership ([432cc92 ](https://github.com/siddharthksah/Stirling-Image/commit/432cc92471b73b73ab9d1be4a82a71d3ed3a88ad ))
* **pipeline:** add inline settings configuration for automation steps ([adc7e1c ](https://github.com/siddharthksah/Stirling-Image/commit/adc7e1c0370df1687b0660bdff279c90ac9d0871 ))
2026-03-24 13:38:48 +00:00
semantic-release-bot
75f38a9fe2
chore(release): 0.6.0 [skip ci]
...
# [0.6.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.5.2...v0.6.0 ) (2026-03-24)
### Features
* extract auto-orient utility and expand test coverage ([e5086ad ](https://github.com/siddharthksah/Stirling-Image/commit/e5086ada6e2f4402973f203b726578dd42da4a32 ))
2026-03-24 12:37:44 +00:00
semantic-release-bot
06eabdd045
chore(release): 0.5.2 [skip ci]
...
## [0.5.2](https://github.com/siddharthksah/Stirling-Image/compare/v0.5.1...v0.5.2 ) (2026-03-23)
### Bug Fixes
* restore APP_VERSION import used by health endpoint ([7dfa7a2 ](https://github.com/siddharthksah/Stirling-Image/commit/7dfa7a295de407f45832b68a2ef64acf2f21205f ))
2026-03-23 16:49:00 +00:00
semantic-release-bot
3735a749d6
chore(release): 0.5.1 [skip ci]
...
## [0.5.1](https://github.com/siddharthksah/Stirling-Image/compare/v0.5.0...v0.5.1 ) (2026-03-23)
### Bug Fixes
* **crop:** use percentCrop from onChange to fix inflated pixel values ([fbdbe09 ](https://github.com/siddharthksah/Stirling-Image/commit/fbdbe0949a64d072e4e86d08c7b39372592eaf04 ))
2026-03-23 16:42:37 +00:00
semantic-release-bot
b4a372be3a
chore(release): 0.5.0 [skip ci]
...
# [0.5.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.4.1...v0.5.0 ) (2026-03-23)
### Bug Fixes
* resolve TypeScript Uint8Array type error with fflate ([1d35db9 ](https://github.com/siddharthksah/Stirling-Image/commit/1d35db98bf359c07779522c30b00d8c7a9d3cb89 ))
* white screen crash when uploading photos with null GPS EXIF data ([70c73d8 ](https://github.com/siddharthksah/Stirling-Image/commit/70c73d85c992bc724c6b18a2d43789871b318e78 ))
### Features
* accept clientJobId in batch endpoint for SSE progress correlation ([2514078 ](https://github.com/siddharthksah/Stirling-Image/commit/2514078ea1feb8e44296e226e37e8e379a20473a ))
* add CSS transform props to ImageViewer for live rotate/flip preview ([267da78 ](https://github.com/siddharthksah/Stirling-Image/commit/267da7857743898e612ba5bb80e24985664bd311 ))
* add live preview callback to RotateSettings, rename button to Apply ([ec192e3 ](https://github.com/siddharthksah/Stirling-Image/commit/ec192e3d96d864e3ce47e991ba1c72d6a4ee7cea ))
* add MultiImageViewer with arrow navigation and filmstrip ([815a8ed ](https://github.com/siddharthksah/Stirling-Image/commit/815a8ed419b82aadec4e07ef4456e9e96b84b65f ))
* add processAllFiles batch method to tool processor hook ([846a51a ](https://github.com/siddharthksah/Stirling-Image/commit/846a51a9fdf4e8fc4c1b9673f13acde646ae0ca9 ))
* add SideBySideComparison component for resize results ([271cab6 ](https://github.com/siddharthksah/Stirling-Image/commit/271cab647bb41872c5e205d6236e35eb7fad0810 ))
* add ThumbnailStrip filmstrip component ([6521d70 ](https://github.com/siddharthksah/Stirling-Image/commit/6521d702385f23a7cb9312c1661541943bfe2e03 ))
* conditional result views — side-by-side for resize, live preview for rotate ([59a57f3 ](https://github.com/siddharthksah/Stirling-Image/commit/59a57f3a00bbd0c6331d1165594ad4266ce3b536 ))
* **crop:** add CropCanvas component with visual overlay, grid, and keyboard controls ([1a076be ](https://github.com/siddharthksah/Stirling-Image/commit/1a076be9b2cc5f434296f2739a395321368c2177 ))
* **crop:** add react-image-crop dependency ([31d426f ](https://github.com/siddharthksah/Stirling-Image/commit/31d426ff6f02965d20e75e85ff15a8cbc1d1df0b ))
* **crop:** redesign CropSettings with aspect presets, pixel inputs, and grid toggle ([c2c256a ](https://github.com/siddharthksah/Stirling-Image/commit/c2c256a180640cf046bd1bc46b05065171a4c2dc ))
* **crop:** wire CropCanvas and CropSettings into tool-page with bidirectional state ([786a671 ](https://github.com/siddharthksah/Stirling-Image/commit/786a671c39859ae0bf1f8732c2ff4efe210d2466 ))
* integrate MultiImageViewer and multi-file UX into tool page ([3796533 ](https://github.com/siddharthksah/Stirling-Image/commit/37965338228a2fca3623718a7db2f8757a464651 ))
* merge multi-image UX — batch processing, filmstrip navigation, resize/rotate redesign ([80756d1 ](https://github.com/siddharthksah/Stirling-Image/commit/80756d15917a877b21a900d282bb6522ae76c2e2 ))
* multi-file metadata display with per-file caching ([474b4a9 ](https://github.com/siddharthksah/Stirling-Image/commit/474b4a941e1be43887beac8d2ec57eb703cba260 ))
* rewrite file-store with FileEntry model for multi-image support ([8844b44 ](https://github.com/siddharthksah/Stirling-Image/commit/8844b44fff2abfbe3262a113dfc35d83367add05 ))
* rewrite resize settings with tab-based UI (presets, custom, scale) ([bc105fd ](https://github.com/siddharthksah/Stirling-Image/commit/bc105fd261de3c11b279557dba98aaad65214f42 ))
* wire up batch processing across tool settings components ([9e2c28f ](https://github.com/siddharthksah/Stirling-Image/commit/9e2c28f19124fca4bc4f55c0997e2314170ae478 ))
2026-03-23 11:23:50 +00:00
semantic-release-bot
8815fc883e
chore(release): 0.4.1 [skip ci]
...
## [0.4.1](https://github.com/siddharthksah/Stirling-Image/compare/v0.4.0...v0.4.1 ) (2026-03-23)
### Bug Fixes
* unify project on port 1349, improve strip-metadata and UI components ([0e7348a ](https://github.com/siddharthksah/Stirling-Image/commit/0e7348a0bedb6c47a8025c47b377849169aa7472 ))
2026-03-23 08:38:56 +00:00
Siddharth Kumar Sah
0e7348a0be
fix: unify project on port 1349, improve strip-metadata and UI components
...
Consolidate all access to localhost:1349 — Vite dev server serves on 1349
and proxies API calls to an internal dev port (13490). Production API
defaults to 1349. Also includes strip-metadata improvements, UI component
updates, and compress operation fixes.
2026-03-23 16:38:27 +08:00
semantic-release-bot
8841dbb677
chore(release): 0.4.0 [skip ci]
...
# [0.4.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.3.1...v0.4.0 ) (2026-03-23)
### Bug Fixes
* streamline CI/CD — remove broken AI docs updater, fix Docker publish ([4f984c8 ](https://github.com/siddharthksah/Stirling-Image/commit/4f984c83acc4bfaa5b9479d80e2bdda05f4a2ccc ))
### Features
* add CSS transform props to ImageViewer for live rotate/flip preview ([113bb75 ](https://github.com/siddharthksah/Stirling-Image/commit/113bb757333e9ad809a401000f3b6b34fa1ef415 ))
* add live preview callback to RotateSettings, rename button to Apply ([31a9439 ](https://github.com/siddharthksah/Stirling-Image/commit/31a943962d46fab1eb1efd9f605fc5a0144ddd87 ))
* add SideBySideComparison component for resize results ([28a8b10 ](https://github.com/siddharthksah/Stirling-Image/commit/28a8b10fa15fa216d7f53256bea9461650358fb1 ))
* conditional result views — side-by-side for resize, live preview for rotate ([989e8dc ](https://github.com/siddharthksah/Stirling-Image/commit/989e8dc6e47fe123d6333dddf4431a01623e0437 ))
* rewrite resize settings with tab-based UI (presets, custom, scale) ([02ef3e6 ](https://github.com/siddharthksah/Stirling-Image/commit/02ef3e6468b36303dfdbc61e18c14dc5eb68d957 ))
2026-03-23 07:15:07 +00:00
semantic-release-bot
ddd30f77b0
chore(release): 0.3.1 [skip ci]
...
## [0.3.1](https://github.com/siddharthksah/Stirling-Image/compare/v0.3.0...v0.3.1 ) (2026-03-23)
### Bug Fixes
* resolve tsx not found in AI docs updater workflow ([b803b0e ](https://github.com/siddharthksah/Stirling-Image/commit/b803b0e443b54bbca33cf88fe1ab38eeddd38baf ))
2026-03-23 04:10:54 +00:00
semantic-release-bot
acf48432be
chore(release): 0.3.0 [skip ci]
...
# [0.3.0](https://github.com/siddharthksah/Stirling-Image/compare/v0.2.1...v0.3.0 ) (2026-03-23)
### Bug Fixes
* add SSE progress endpoint to public paths ([b3f590c ](https://github.com/siddharthksah/Stirling-Image/commit/b3f590c8b35fb396cf298187f241e45827ea1db8 ))
* apply continuous progress bar to erase-object and OCR ([8db84a7 ](https://github.com/siddharthksah/Stirling-Image/commit/8db84a753cd8dbd522146aa25e85bb454b032490 ))
* continuous progress bar (no 100%→0% reset) ([28cd950 ](https://github.com/siddharthksah/Stirling-Image/commit/28cd950ede6d0fc03e0d7cca0a013d883ea00238 ))
* setError(null) was overriding setProcessing(true) ([b5cc452 ](https://github.com/siddharthksah/Stirling-Image/commit/b5cc45207758c25867833fad961744a37df36fda ))
### Features
* **ai:** add emit_progress() calls to all Python AI scripts ([7238429 ](https://github.com/siddharthksah/Stirling-Image/commit/723842988b39a8d9ea4f5b0cdd97569ff0c65f68 ))
* **ai:** add onProgress callback to all AI wrapper functions ([acb230c ](https://github.com/siddharthksah/Stirling-Image/commit/acb230cc98193766fc978098c12dfedf08a0a339 ))
* **ai:** rewrite bridge.ts to stream stderr progress via spawn ([7d74ddd ](https://github.com/siddharthksah/Stirling-Image/commit/7d74ddd3a6a466f1863412b36501c663fd642194 ))
* **api:** add SingleFileProgress type and SSE update function ([7eddac5 ](https://github.com/siddharthksah/Stirling-Image/commit/7eddac5119d1db3cbf831c735c5b78f0c92728ef ))
* **api:** wire AI route handlers to SSE progress via clientJobId ([27600a4 ](https://github.com/siddharthksah/Stirling-Image/commit/27600a431805d54b32875dbe5a58f05cfcdbe2a1 ))
* replace model dropdown with intuitive subject/quality selector in remove-bg ([9aa0371 ](https://github.com/siddharthksah/Stirling-Image/commit/9aa0371a1452540557aca9f2195032c5c16ce3fb ))
* **web:** add ProgressCard component ([01d5d66 ](https://github.com/siddharthksah/Stirling-Image/commit/01d5d66466a7bcf4a0c0f454f7b4d58f7e1e7801 ))
* **web:** add ProgressCard to non-AI tool settings (Group A) ([5c64b30 ](https://github.com/siddharthksah/Stirling-Image/commit/5c64b306ead8b6214dee6d51e8dae25fb47ff7e8 ))
* **web:** migrate AI tool settings to ProgressCard ([dbd3bf7 ](https://github.com/siddharthksah/Stirling-Image/commit/dbd3bf737e4692279ba5b7c3d860779193a21b5f ))
* **web:** rewrite useToolProcessor with XHR upload progress and SSE ([60945fd ](https://github.com/siddharthksah/Stirling-Image/commit/60945fd3b3674d2026f3f717cd3d123951126933 ))
2026-03-23 04:03:22 +00:00
Siddharth Kumar Sah
80e536bcf8
chore: remove dead code, add test infrastructure, update docs
...
- Delete 3 dead files: use-batch-processor.ts, use-i18n.ts, smart-crop.ts (AI package)
- Remove dead getJobProgress function and unused runPythonScript wrapper
- Remove 6 unused imports across API and web apps
- Remove unused shared types (ImageFormat, AppConfig, ApiError, HealthResponse, JobProgress)
and constants (SUPPORTED_INPUT_FORMATS/OUTPUT_FORMATS, DEFAULT_OUTPUT_FORMAT)
- Remove unused store method (setOriginalBlobUrl) and clean AI package re-exports
- Add test infrastructure: vitest config, unit/integration/e2e tests, fixtures, screenshots
- Add Docker test infrastructure: Dockerfile.test, docker-compose.test.yml
- Add download_models.py for pre-baking AI model weights in Docker
- Add filename sanitization utility (apps/api/src/lib/filename.ts)
- Update .gitignore to exclude coverage/, *.tsbuildinfo, .superpowers/, test artifacts
- Update .dockerignore to exclude test/coverage/IDE artifacts from builds
- Update docs: remove smart crop from AI docs (uses Sharp directly), update bridge docs
2026-03-23 11:46:45 +08:00
Siddharth Kumar Sah
acb230cc98
feat(ai): add onProgress callback to all AI wrapper functions
2026-03-23 01:39:52 +08:00
Siddharth Kumar Sah
723842988b
feat(ai): add emit_progress() calls to all Python AI scripts
2026-03-23 01:38:19 +08:00
Siddharth Kumar Sah
7d74ddd3a6
feat(ai): rewrite bridge.ts to stream stderr progress via spawn
2026-03-23 01:37:12 +08:00
Siddharth Kumar Sah
4807bd2726
feat: add semantic-release for automated versioning and help dialog
...
- Set up semantic-release with zero-touch CI pipeline on push to main
- Add version sync script to keep all package.json files and APP_VERSION
constant in sync automatically
- Consolidate Docker publishing into single tag-triggered workflow that
pushes to both Docker Hub and ghcr.io with semver tags
- Add help dialog with keyboard shortcuts, getting started guide, and
resource links
- Sync all versions to 0.2.1 to match Docker Hub latest
2026-03-22 21:25:14 +08:00
Siddharth Kumar Sah
fb1d366d5f
fix: use U2-Net as default model (fast, 2s) with BiRefNet as opt-in
...
BiRefNet-Lite times out on first load (~60s+ for 973MB model).
U2-Net works in 2 seconds. Users can still select BiRefNet for
higher quality when they're willing to wait. Added timing hints
in model descriptions and increased timeout for BiRefNet models.
2026-03-22 21:08:37 +08:00
Siddharth Kumar Sah
977b5f5ec0
fix: bridge.ts ENOENT check for Python venv fallback
2026-03-22 20:52:51 +08:00
Siddharth Kumar Sah
818d2acd94
fix: Python bridge fallback only on missing venv, not script errors
...
The bridge.ts catch block was catching ALL errors from the venv Python
and falling back to system python3. This masked real script errors
(like rembg model loading failures) by reporting "rembg not installed"
from the system python3 fallback. Now only falls back on ENOENT (venv
binary not found).
2026-03-22 20:41:04 +08:00
Siddharth Kumar Sah
2bdc367767
fix: use BiRefNet-Lite as default model and fix JSON parsing
...
- Switch default from birefnet-general (973MB, 4min) to
birefnet-general-lite (faster, still SOTA quality)
- Fix Python script stdout pollution — progress messages now go to
stderr so the JSON result parser doesn't break
- Pre-download birefnet-general-lite in Docker build
2026-03-22 20:07:39 +08:00
Siddharth Kumar Sah
77ee8469d8
feat: upgrade to BiRefNet SOTA background removal model
...
- Switch default model from U2-Net to BiRefNet (state-of-the-art)
- Add 6 model options: BiRefNet, BiRefNet Lite, BiRefNet Portrait,
BRIA RMBG, IS-Net, U2-Net
- Add animated progress bar with stage indicators (loading model,
analyzing, removing, refining edges) and elapsed timer
- Add intuitive background color presets (Transparent, White, Black,
Red, Green, Blue) as clickable buttons + custom color picker
- Handle background color compositing in Python (PIL alpha composite)
- Add checkerboard pattern to before/after slider for transparency
- Pre-bake BiRefNet model (973MB) in Docker image for instant use
2026-03-22 19:51:35 +08:00
Siddharth Kumar Sah
ce03aad10f
feat: production Docker, Playwright tests, settings API, and bug fixes
...
- Add user management endpoints (register, list, delete, change password)
- Add API key management (create, list, delete)
- Add settings persistence endpoints (get, put)
- Wire settings dialog to real backend (People, API Keys, System, Security)
- Fix login auth flow (window.location.href for full reload)
- Fix download URLs returning 401 (make public since UUIDs are unguessable)
- Fix border tool shadowColor validation (accept 6-8 hex digits)
- Fix remove-bg alpha matting fallback (retry without on failure)
- Fix AI tool silent fallbacks (report errors instead of no-ops)
- Add checkerboard background to before/after slider for transparency
- Add progress bars to all AI tool components
- Add Playwright E2E test suite (131 tests across 9 test files)
- Rewrite Dockerfile for production (tsx runtime, pre-baked AI models)
- Add .dockerignore for faster builds
- Add proper accessible labels to login form
2026-03-22 19:28:57 +08:00