github AtalayaLabs/OxiCloud v0.5.4
v0.5.4 — Docker Image Fix, UX Polish & OpenAPI Latest

latest releases: v0.5.6, v0.5.5
19 days ago

OxiCloud v0.5.4 — Docker Image Fix, UX Polish & OpenAPI

A focused release with 29 commits from 4 contributors, touching 369 files with over 2,000 lines of improvements. This release restores Docker Hub image publishing (missing since v0.5.1), introduces browser history navigation, OpenAPI spec generation, and a wave of UX refinements for file management.

⚠️ Docker Hub is back: The diocrafts/oxicloud:0.5.4 and :latest images are now available. Images for v0.5.2 and v0.5.3 were never published due to CI pipeline failures — this release fixes all underlying issues. See #250 for details.


Highlights

  • Docker Image Publishing Restored — Fixed three cascading CI/CD failures that prevented container images from being published since v0.5.1
  • Browser History & URL Bookmarking — Navigate folders with browser back/forward buttons and bookmark any folder URL directly
  • OpenAPI Spec Generation — Auto-generated OpenAPI documentation via utoipa for the entire REST API
  • Enhanced Drag & Drop — Multi-file drag support with visual drag summary and improved drop targets
  • Ctrl/Meta/Alt Multi-Select — Select multiple files using keyboard modifiers, desktop-style
  • WOPI PDF Fallback — Graceful fallback to inline viewer when WOPI editor fails for PDF files
  • Configurable Server PortOXICLOUD_SERVER_PORT env var replaces hardcoded port 8086
  • Login & User Menu Fix — Resolved .hidden class conflict that caused blank login page and missing admin badge/panel in user menu
  • View Toggle Polish — Refined grid/list view toggle buttons with tighter proportions

Features

  • Browser history navigation — Navigate folders with browser back/forward buttons; folder URLs are now bookmarkable (@EdouardVanbelle#232)
  • OpenAPI spec generation with utoipa — Auto-generate openapi.json covering all REST API endpoints via cargo run --bin generate-openapi or just openapi (@iltumio#245)
  • Ctrl/Meta/Alt key multi-select — Hold modifier keys to toggle individual item selection, matching desktop file manager behavior (@EdouardVanbelle#261)
  • Improved drag & drop — Support for dragging multiple files simultaneously with a visual drag summary showing file count (@EdouardVanbelle#239)
  • Action column with context menu — File list view now includes an action column displaying the context menu inline (@EdouardVanbelle#255)
  • Smart loading indicator — File view loader only appears if requests take more than 100ms, avoiding flicker on fast loads (@EdouardVanbelle#232)
  • Configurable server port — Use OXICLOUD_SERVER_PORT env var instead of hardcoded port 8086 (@justDance-everybody#256)

Bug Fixes

  • Docker image publishing restored — Fixed Dockerfile cacher stage failing on generate-openapi binary target, added explicit ref: to workflow checkout steps for correct tag builds, and increased multi-arch build timeout (@DioCrafts#250)
  • Blank login page fixed.hidden { display: none !important } CSS class overrode inline style.display assignments, preventing login/register/language panels from appearing. All panel visibility now uses classList.remove/add (@DioCrafts)
  • Admin badge & panel missing — Same .hidden class conflict prevented the admin role badge, admin panel link, and admin divider from showing in the user dropdown menu (@DioCrafts)
  • Profile page not rendering — Profile main-content and auth-error containers also had the hidden class conflict and never became visible (@DioCrafts)
  • WOPI PDF view fallback — WOPI editor now falls back to view mode for PDF files instead of failing (@justDance-everybody#257)
  • WOPI-to-inline viewer fallback — When WOPI editor fails entirely for PDFs, gracefully falls back to the built-in inline viewer (@justDance-everybody#258)
  • Notification bell animation — Fixed bell animation and notification zone now automatically closes on clear (@EdouardVanbelle#247)

Refactoring & Code Quality

  • Merge grid and list builder — Unified grid/list file views into a single builder, using CSS-only switching between view modes (@EdouardVanbelle#260)
  • Simplify multiSelect module — Removed duplicate code and streamlined multi-selection logic (@EdouardVanbelle#239)
  • Rename View into Section — Consistent naming across navigation components (@EdouardVanbelle#239)
  • Simplify empty list rendering — Empty state now works correctly in both grid and list views (@EdouardVanbelle#239)
  • No blink on section re-select — Navigation no longer re-renders when clicking the already-selected section (@EdouardVanbelle#239)
  • Remove executable attributes — Cleaned up file permissions on non-bash files (@EdouardVanbelle#248)
  • Remove generated openapi.json from tracking — The generated spec is no longer committed to the repo (@iltumio#245)
  • View toggle button polish — Reduced gap, padding, and button size for a tighter, more balanced grid/list toggle (@DioCrafts)
  • Consistent panel visibility — Added hidden class to admin-setup-panel in HTML; removed redundant CSS display:none rule (@DioCrafts)

Stats

Metric Value
Commits 29
Contributors 4
Files changed 369
Insertions +2,048
Deletions −1,021
Issues closed #250, #243, #254
PRs merged 11

🙏 Contributor Acknowledgements

@EdouardVanbelle — 12 commits ⭐ MVP of this release

Edouard delivered an extraordinary volume of UX improvements in this release. The browser history navigation transforms how users interact with OxiCloud — folder URLs are now bookmarkable and the back/forward buttons work naturally. The unified grid/list builder is an elegant refactor that simplifies the entire file view architecture. Multi-file drag & drop with visual summaries, Ctrl/Meta multi-select, the inline action column, smart loading indicators, and the notification fix round out a comprehensive overhaul of the frontend experience. Every change shows meticulous attention to how real users interact with a file manager. Thank you, Edouard, for raising the bar on OxiCloud's user experience. 🏆

@justDance-everybody — 3 commits

justDance-everybody tackled critical WOPI integration issues, implementing a two-layer fallback strategy for PDF viewing: first falling back from edit mode to view mode, and then from WOPI entirely to the inline viewer. This ensures PDF files always render, regardless of WOPI editor availability. They also made the server port configurable via environment variable — a simple but essential change for Docker and reverse proxy deployments. Thank you for making OxiCloud more resilient and deployment-friendly.

@iltumio (Manuel Tumiati) — 2 commits

Manuel introduced OpenAPI spec generation using utoipa, giving OxiCloud a proper machine-readable API contract for the first time. This unlocks automatic client SDK generation, Swagger UI documentation, and API testing workflows for the entire community. He also cleaned up the repo by removing the generated JSON from version control. Thank you, Manuel, for this foundational developer experience improvement.

@DioCrafts — 2 commits

Root-caused and fixed the Docker Hub publishing pipeline that had been silently failing since v0.5.2, restoring container image availability. Fixed a pervasive .hidden class CSS conflict that caused blank login pages, missing admin UI elements, and broken profile rendering. Polished the view toggle buttons.

New Contributors 🎉

What's Changed

Full Changelog: v0.5.3...v0.5.4

Don't miss a new OxiCloud release

NewReleases is sending notifications on new releases.