Commit Graph
100 Commits
Author SHA1 Message Date
LeoVasanko 0d853032bf Cleaner handling when preview generation fails. Using original file as fallback. 2026-01-21 23:29:51 +00:00
LeoVasanko 1cb512e65d Remove overly eager Gallery automode. No longer switches to gallery when merely changing sort column. 2025-10-01 07:23:24 +00:00
LeoVasanko 972aaee9fe Improved reliability of direct to folder downloads. 2025-10-01 06:49:50 +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 6639174e8f Fix Vue TypeScript module declarations for build 2025-10-01 05:32:14 +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 55133e82f3 Better transparent Cista image 2023-11-25 17:25:35 +00:00
LeoVasanko 211da1cdda Correct hatch build hook 2023-11-21 20:11:37 +00:00
LeoVasanko d8972cee5d Less messy breadcrumbs on search results in gallery 2023-11-21 17:51:38 +00:00
LeoVasanko 2110284b76 Fix direct uploads and downloads, transfer bar UI 2023-11-21 16:11:54 +00:00
LeoVasanko fa0588837e Fixed New Folder, added Rename to Gallery 2023-11-21 15:49:33 +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 afc6c37d78 Cleanup 2023-11-21 08:35:34 +00:00
LeoVasanko 1d6319d900 Download progress bar 2023-11-21 08:19:23 +00:00
LeoVasanko ec9fda3586 Preserve cursor and selection across reloads. 2023-11-21 06:49:15 +00:00
LeoVasanko 136d2c2421 Keep current cursor when switching gallery/details. 2023-11-21 06:11:05 +00:00
LeoVasanko 27aefc50d4 Fixed renames and breadcrumbs for gallery. 2023-11-21 05:47:41 +00:00
LeoVasanko dd95e5a858 Prune deleted folders off of breadcrumbs' longest visited (keeps current folder even if missing). 2023-11-21 04:18:37 +00:00
LeoVasanko cdb22f9228 Refactor empty folder to a separate component, allow creating new folders in empty folders again. 2023-11-21 04:08:17 +00:00
LeoVasanko 876ecd8978 Don't let global shortcuts interfere with input fields. 2023-11-21 03:45:47 +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 ee65f8afb7 Small fixes 2023-11-20 12:57:05 +00:00
LeoVasanko 50642231e5 Avoid showing dialogs at page load. 2023-11-20 12:42:04 +00:00
LeoVasanko dfd4a15cc9 Implement settings dialog and password changes. 2023-11-20 19:26:51 +00:00
LeoVasanko 907fdb9baf Gallery improvements, better layout and autoplay of next media file. 2023-11-20 17:51:34 +00:00
LeoVasanko 4b49f454ba More robust and flexible layout. 2023-11-19 13:55:52 +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 fee66ce7ed Add pymupdf/fitz dependency 2023-11-19 07:21:11 +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 c5f611bc4c Improve Gallery keyboard navigation 2023-11-19 04:37:48 +00:00
LeoVasanko 6dfb93e0dc Remove new folder button until implemented in gallery 2023-11-19 04:26:38 +00:00
LeoVasanko 9724f1095e Fix theming of filenames in gallery light mode. 2023-11-19 04:25:08 +00:00
LeoVasanko fb565a95d6 Fix preview images that need rotation 2023-11-19 03:56:16 +00:00
LeoVasanko 218f9a5b26 Remove debug 2023-11-19 03:47:01 +00:00
LeoVasanko 09e35acf87 Add PIL dependency 2023-11-19 03:40:34 +00:00
LeoVasanko c84c570d2e Implement media preview thumbnails for Gallery 2023-11-19 03:38:25 +00:00
LeoVasanko a52167bb5e Fix empty folder / folder missing for empty folders at root 2023-11-19 02:22:07 +00:00
LeoVasanko a04b2794d6 Large number of keyboard navigation and other fixes. 2023-11-19 02:15:13 +00:00
LeoVasanko d721de8811 Global shortcut keys tuning. 2023-11-18 23:56:53 +00:00
LeoVasanko 651ce7b6a7 Remove defineProps imports (it is a compiler macro now). 2023-11-18 23:47:55 +00:00
LeoVasanko 64eb9896a9 Fix cursor handling 2023-11-18 23:47:34 +00:00
LeoVasanko f16a738ec2 Search placeholder 2023-11-18 23:39:08 +00:00
LeoVasanko 763991f86e File explorer CSS, avoid modified/size being cut 2023-11-18 23:32:40 +00:00
LeoVasanko 548e67338d Improved breadcrumb scaling 2023-11-18 23:00:55 +00:00
LeoVasanko ea4edc6e4f Added header eye button for gallery toggle 2023-11-18 23:00:46 +00:00
LeoVasanko 1d47397506 Keyboard sort by 1-2-3 supplemented by the key left of them for default sort. 2023-11-18 22:31:26 +00:00
LeoVasanko fc2c961d10 Refactoring cursor to be stored in store as key only. A few issues remain. 2023-11-18 11:44:18 +00:00
LeoVasanko 9895d7bf6c Implemented Gallery view for media files. 2023-11-18 10:32:24 +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 1ed4a8db94 Fixed header and breadcrumb layout and issues. 2023-11-18 08:16:53 +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 890fa6ec06 Update documentation README 2023-11-15 00:23:00 +00:00
LeoVasanko 2d15a0b76c Update frontend/README.md 2023-11-14 23:50:17 +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 14ea4d51f2 Keyboard nav: 1/2/3 globally toggle table ordering. Esc closes search, slash also toggles search like Ctrl/Cmd+F does. 2023-11-14 21:55:55 +00:00
LeoVasanko 0d24d807ac BreadCrumb & keyboard navigation improvements. 2023-11-14 21:43:01 +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
LeoVasanko 4c9d802b65 Add project URL 2023-11-14 06:59:22 +00:00
LeoVasanko 479b4a13d0 Update README 2023-11-14 06:45:05 +00:00
LeoVasanko 626afc07fa Remember sort order 2023-11-14 06:11:32 +00:00
LeoVasanko 551dfb61e8 Add file context menu (only rename for now). 2023-11-14 02:09:12 +00:00
LeoVasanko a3e4c50707 Add missing file 2023-11-14 01:55:04 +00:00
LeoVasanko d5cc4ebcb8 Refactoring Document storage (#5)
- Major refactoring that makes Doc a class with properties
- Data made only shallow reactive, for a good speedup of initial load
- Minor bugfixes and UX improvements along the way
- Fixed handling of hash and question marks in URLs (was confusing Vue Router)
- Search made stricter to find good results (not ignore all punctuation)
2023-11-13 17:52:57 +00:00
LeoVasanko 4a2d6c1299 Use localStoragerather than sessionStorage for cache. Rename variable. 2023-11-13 13:04:39 +00:00
LeoVasanko 08a018f382 Log messages on session loading 2023-11-13 12:11:17 +00:00
LeoVasanko 4747c1cb7e Typing error 2023-11-13 12:11:02 +00:00
LeoVasanko ca41f29310 Pasteing files and folders to upload. 2023-11-13 19:39:10 +00:00
LeoVasanko afd106968c Update modified immediately when entering a folder 2023-11-13 18:19:13 +00:00
LeoVasanko cb3e5e146c Fix upload of zero-sized files. 2023-11-13 18:00:44 +00:00
LeoVasanko b31a575365 Clear file upload input to allow re-uploading the same item. 2023-11-13 17:38:22 +00:00
LeoVasanko 2f6ddf1805 Only update time-ago modified field on current folder (optimization, full update was slow for large storages). 2023-11-13 16:52:03 +00:00
LeoVasanko 7943d214e1 Don't reload backend on wwwroot changes. 2023-11-13 16:48:45 +00:00
LeoVasanko 4f01783920 Upload manager UI fix/tuning. 2023-11-13 16:37:56 +00:00
LeoVasanko 55007b4b8b More efficient flat file list format and various UX improvements (#3)
This is a major upgrade with assorted things included.

- Navigation flows improved, search appears in URL history, cleared when navigating to another folder
- More efficient file list format for faster loads
- Efficient updates, never re-send full root another time (except at connection)
- Large number of watching and filelist updates (inotify issues remain)
- File size coloring
- Fixed ZIP generation random glitches (thread race condition)
- Code refactoring, cleanup, typing fixes
- More tests
2023-11-12 23:20:40 +00:00
LeoVasanko 7391033d1e Favicon, title, automatic & manual server naming (#2)
Server name may be set in config file. If unset, backend uses the folder name being served. This is shown in page title for site root, and subfolder names are also now shown. New icon of Droppy icon, changing only the color.
2023-11-08 23:00:07 +00:00
LeoVasanko 9762d7c1ad Linting, removed extra line from pyproject.toml. 2023-11-09 05:08:46 +00:00
LeoVasanko b8197d7974 Correct processing of custom config dir 2023-11-09 04:56:43 +00:00
LeoVasanko bc67ef5fd1 Frontend created and rewritten a few times, with some backend fixes (#1)
The software is fully operational.
2023-11-08 20:38:40 +00:00
LeoVasanko ab6b19e538 Formatting and fix Internal Server Error on upload 2023-10-26 11:18:59 +00:00
LeoVasanko 96e007b068 Make sessions last a year 2023-10-23 20:03:11 +00:00
LeoVasanko 1c310379b1 Fix field name in session cookie; prevented logged in useds authenticating. 2023-10-23 19:47:57 +00:00
LeoVasanko 7fb423a0bf Watcher cleanup. Restart server on config changes and if frontend is modified. 2023-10-23 18:57:50 +00:00
LeoVasanko 7ce8775f05 /api/watch also continuously reports disk usage 2023-10-22 23:24:54 +00:00