Skip to content

v0.3.3 PWA Support & Architectural Cleanup

Choose a tag to compare

@aFFekopp aFFekopp released this 08 Feb 10:49
· 4 commits to main since this release

Added

  • Automatic Cache Busting:
    • Implemented versioning for the Service Worker (sw.js).
    • Implemented versioning for the LocalStorage data cache (data.js).
    • Added logic to automatically clear local browser cache if a version mismatch is detected, ensuring users always have the latest schema and assets.
  • Progressive Web App (PWA) Support:
    • Added manifest.json for home screen installation and app configuration.
    • Implemented a Service Worker (sw.js) for static asset caching, improving load times and adding limited offline support.
    • Added iOS-specific meta tags and apple-touch-icon for a more native mobile experience.
    • Updated backend server to correctly serve PWA configuration files from the root directory.

Changed

  • UI Simplification:
    • Replaced the complex header profile dropdown with a direct Instrument Selector.
    • Optimized Settings page layout, moving Appearance (Theme) settings to the top in a streamlined layout.
  • Architectural Cleanup:
    • Removed the users table and all associated code for multiple profiles.
    • Migrated default_instrument_id and other preferences to a simplified settings table.
    • Cleaned up Export/Import logic to exclude old user profile data (name, email), ensuring a more private and streamlined single-user experience.

Fixed

  • Instrument Selection Regressions:
    • Implemented the missing /api/settings backend endpoint for persistent settings updates.
    • Restored instrument highlighting on the Settings page by ensuring full user data is retrieved for comparison.
    • Corrected the display refresh logic on the Settings page after changing instruments.
  • Dropdown Conflicts: Resolved a click event conflict in sessions.html that prevented the top-right user profile dropdown from opening.
  • Menu Interactions: Improved the global click handler to respect multiple different dropdown mechanisms, ensuring smooth navigation and context menu usage.