DEV Community

Cover image for OpenSparrow v3.5 - Login language selector, searchable FK pickers & notification polish
Tomasz
Tomasz

Posted on

OpenSparrow v3.5 - Login language selector, searchable FK pickers & notification polish

OpenSparrow v3.5 is a usability release that adds a language selector to the login page, searchable foreign-key pickers, and notification timestamps, while unifying the notifications dropdown with the shared panel style. This update makes the app friendlier for international users, speeds up data entry on long foreign-key lists, and tidies a few small UI details. Below is a breakdown of what changed and why it matters.

Language selector on the login page

Users can now pick their locale before signing in. The login form gains a language <select> populated from the available locales, and the <html lang> attribute follows the active locale so screen readers and browsers render the page in the right language from the very first screen.

  • Locale is chosen before authentication, so the whole session starts in the user's language
  • The <html lang> attribute now tracks the active locale instead of a hardcoded value
  • Selection is driven by I18n::availableLanguageMeta(), so new locales appear automatically

Searchable foreign-key pickers

Edit and create forms replace the plain <select> on foreign-key fields with a searchable input backed by a <datalist>. Long FK lists are now filterable by typing instead of scrolling through a dropdown.

  • New public/assets/js/edit/fk-search.js wires up the search behaviour
  • Typing filters the datalist; the selected value is synced to a hidden field carrying the real FK id
  • Blurring with an unmatched value restores the original label, so invalid selections can't slip through

Notification timestamps

Each item in the notifications dropdown now shows its created_at time, formatted with the browser's locale. You can tell at a glance how old a notification is.

GitHub link in the footer

A GitHub lockup badge now links to the project repository from the footer, so the source is one click away from anywhere in the app.

Changed

  • The notifications dropdown was unified with the shared bp-panel style (header, close button, overlay) instead of its own bespoke markup.
  • Notes UI strings are now translated into all 19 locales.

Fixed

  • The #debug bar no longer flashes before JS hides it on page load — it is now hidden inline.

Upgrade note

No database migration and no configuration keys are removed by this release. Upgrading is a drop-in replacement.

Following this series?

OpenSparrow v3.4 — Material Symbols Outlined and a Searchable Icon Picker

Websites

https://opensparrow.org

Top comments (0)