80 Commits
Author SHA1 Message Date
LeoVasanko 55f9117b3e Remove refresh wwwroot support and static files serving, only using vite to serve frontend in dev mode (avoid accidentally using stale builds). 2026-02-01 06:14:35 +00:00
LeoVasanko 2b6746c55e Change default port to 8989 like Droppy. Using 8999 for backend in dev mode. 2026-02-01 06:09:56 +00:00
LeoVasanko 1ed3779933 Use fastapi-vue parse_endpoint instead of our own logic. 2026-02-01 06:00:30 +00:00
LeoVasanko 032ad13b97 Unified watcher that *may* receive events from inotify and other sources. Added change notify messages from control and upload WebSockets. Cleanup debug printouts. 2026-02-01 02:44:52 +00:00
LeoVasanko 4eae75c84b New inotify watcher with efficient algorithms. 2026-01-31 23:46:43 +00:00
LeoVasanko 252b31a293 Performance profile file change watching. 2026-01-31 22:53:17 +00:00
LeoVasanko bc355d991d Simplified startup box unix socket formatting. 2026-01-31 22:09:57 +00:00
LeoVasanko 036c4342de Better error logging on preview generation errors. 2026-01-31 22:00:26 +00:00
LeoVasanko 160f929e0c Basic details in startup box. 2026-01-31 21:53:39 +00:00
LeoVasanko 1970d40d8a Implement background worker to make search response faster and avoid hanging the UI when there are a lot of files. Implement better toast messages for transitional events that automatically disappear. 2026-01-31 21:02:16 +00:00
LeoVasanko 46d222006a More robust zip download processing; don't let aborted requests hang threads, use a larger threadpool separate of preview generation. 2026-01-31 19:43:23 +00:00
LeoVasanko 8f76d770ee Fixes for public mode authentication flows. 2026-01-31 04:48:44 +00:00
LeoVasanko 232fd92b22 Finalize Paskia integration and built-in authentication. 2026-01-31 00:47:04 +00:00
LeoVasanko be69164c8f Bundle icons into a single file. 2026-01-30 19:12:27 +00:00
LeoVasanko 849b1a6868 Update scripts with latest fastapi-vue-setup. 2026-01-30 18:40:26 +00:00
LeoVasanko 7be02e951d Consistent dialog styling widgets and using Paskia's shared backdrop. Internal password auth mimics Paskia. API paths changed (/auth goes to internal or paskia depending on config). All API calls and previews get access checks. 2026-01-30 18:28:05 +00:00
LeoVasanko 442816a0ae Fix video preview images that were displayed sideways for portrait video. The least bad approach loses HDR but shows in correct orientation. For 0 and 180 degrees we preserve HDR too. 2026-01-22 02:20:39 +00:00
LeoVasanko ba6380e71e Add a script to run devserver. Migrate to build and JS utils provided by fastapi-vue. Frontend directory renamed to frontend-build. Update Sanic, deprecations. 2026-01-21 23:32:04 +00:00
LeoVasanko 0d853032bf Cleaner handling when preview generation fails. Using original file as fallback. 2026-01-21 23:29:51 +00:00
LeoVasanko 055eaa8a21 Fix admin UI password reset and user deletion functions. 2025-10-01 06:31:20 +00:00
LeoVasanko 05fb81c36d Implement web-based user management / admin setup. (#8)
Implement Admin Settings dialog for user management and toggling the public server flag, not needing CLI for maintenance anymore.
2025-09-30 23:10:33 +00:00
LeoVasanko 5e2e71eafb Clean up the remaining uses of print() 2025-08-18 22:49:40 +00:00
LeoVasanko 7e4c5bc911 Use zstd rather than brotli for static file compression. 2025-08-18 04:51:46 +00:00
LeoVasanko bfcce1b80e Fix typing and import in the config file module. 2025-08-17 22:10:55 +00:00
LeoVasanko 2bd8d4a323 Startup banner with version display, and --version, using stderr/stdout properly. 2025-08-17 21:10:43 +00:00
LeoVasanko 1d97d48fed Cleaner server shutdowns:
- Remove a workaround for Sanic server not always terminating cleanly
- Terminate worker threads before server stop
- Silent closing of watching WebSocket attempted to open while shutting down
2025-08-17 19:21:03 +00:00
LeoVasanko f627890e55 Image previews improved, all EXIF Orientations handled. 2025-08-17 19:00:52 +00:00
LeoVasanko 5a5b47346f Cleanup for release 1.0.0. 2025-08-15 23:11:57 +00:00
LeoVasanko 64de17a74b Maintenance update (#7)
- Use modern tooling uv and bun
- Various changes to work with latest PyAV and PIL that have changed their API
- Improved image, video and document previews (uses AVIF, renders AVIF/HEIC/videos in HDR, faster processing)
- Fix a server hang in some cases where a folder was moved or renamed
- Log exceptions instead of only returning 500 response to client
- Log timing of preview generation functions
- Default to quality 50 in previews (previously 40)
2025-08-15 16:03:04 +00:00
LeoVasanko 83bc1bea81 Various build fixes, cleanup and details (#6)
- Major memory usage reduction in video previews
- Finally builds properly on Windows too
2023-11-21 15:32:49 +00:00
LeoVasanko 27aefc50d4 Fixed renames and breadcrumbs for gallery. 2023-11-21 05:47:41 +00:00
LeoVasanko d0ef32c9e9 Further bugfixes. Increase full update interval to 5 minutes. 2023-11-20 19:22:49 +00:00
LeoVasanko 58579b50c4 Rewritten inotify watching and faster full tree traversal (also for polling worker). Bugs in inotify watcher fixed. 2023-11-20 18:49:24 +00:00
LeoVasanko 587268c14b Fix regression: inotify watching was broken. 2023-11-20 13:58:20 +00:00
LeoVasanko dfd4a15cc9 Implement settings dialog and password changes. 2023-11-20 19:26:51 +00:00
LeoVasanko d939c1ddbb Video preview posters 2023-11-19 08:44:46 +00:00
LeoVasanko 66698869d6 Minor changes 2023-11-19 08:03:23 +00:00
LeoVasanko c72e3d91ee Added PDF previews. Preview quality configurable. Preview browser caching and cache busting. 2023-11-19 07:16:24 +00:00
LeoVasanko fb565a95d6 Fix preview images that need rotation 2023-11-19 03:56:16 +00:00
LeoVasanko c84c570d2e Implement media preview thumbnails for Gallery 2023-11-19 03:38:25 +00:00
LeoVasanko 35a6b2740b Skip any symlinks while scanning. Stats on how long a scan took. 2023-11-18 09:49:35 +00:00
LeoVasanko ffd8086b03 Correct error page rendering via Sanic. 2023-11-18 01:20:14 +00:00
LeoVasanko 0cd7249712 Tidying up log, correct HTTP status for error pages. 2023-11-17 09:10:18 +00:00
LeoVasanko 5deeaae5bd Watching cleanup 2023-11-17 00:24:45 +00:00
LeoVasanko 4613581759 Code cleanup and bugfixes:
- Resolve threading deadlock when multiple watch request arrived at the same moment.
- Implement more graceful server exit.
- Reduce excessive logging.
- Fix unix socket clearing; until Sanic starts accepting Path for unix socket name.
2023-11-16 03:02:44 +00:00
LeoVasanko 879ad09677 CLI simplification, better diagnostic for missing wwwroot, docs. 2023-11-15 00:03:15 +00:00
LeoVasanko 8bff541297 Updated installation and README 2023-11-15 00:00:21 +00:00
LeoVasanko dd4a82aaaa Attempt to fix config handling on Windows 2023-11-14 08:31:35 +00:00
LeoVasanko c5b5e3a76c Add more quit points for watching thread. 2023-11-14 08:28:53 +00:00
LeoVasanko c578f84753 Add frontend build to Python packaging. Remove dead code, cleanup. 2023-11-14 08:19:33 +00:00