Releases: kbzowski/ntfier
Releases · kbzowski/ntfier
Ntfier v1.0.0
Features
- replace theme grid with compact preview + list selector
- add dark rounded background to app icons
- regenerate all app and tray icons from new logos
- add context menu with copy title/content to notification cards
- auto-mark notifications as read for muted topics
- add notification deletion with optional remote delete and animated UI
- add comprehensive error handling with toast notifications
- add image preview route component
- hide to system tray on minimize when minimize_to_tray is enabled
- add image-preview window capability and route
- add attachment availability check with unavailable state
- migrate from rusqlite to Diesel ORM
- add LazyImage component for deferred image loading
- add notification sound setting
- add compact view mode for notifications
- add notification expanded state persistence
- add reusable components and utilities
Bug Fixes
- validate URL in image-preview route
- downgrade credential logging to debug level
- propagate errors in create_subscription server insert
- add rehype-sanitize to prevent XSS in markdown content
- sanitize Diesel error messages sent to frontend
- use url::Url for WebSocket URL building
- remove password column from schema
- add try-catch guards to localStorage theme operations
- resolve unused variable lint warnings and enable unsafe biome fixes
- log JSON parse errors in JsonVec deserialization
- prevent infinite loop on connection setup failures
- wrap multi-step operations in transactions
- enable SQLite foreign key constraints
- add comprehensive error handling for image preview window
- preserve notification collapse state across app restarts
- run Rust linting on Windows and improve pre-commit hook
- add fetch-depth for changelog generation
Performance
- replace lucide-react barrel imports with direct path imports
- extract noop and reuse stable callback for UpdateToast
- memoize Header component
- read previewErrors via ref in handleImageClick callback
- stabilize onOpenSettings/onAddSubscription callbacks
- cache localStorage reads for theme preferences
- defer currentTopicId read in handleMarkAllAsRead via ref
- narrow loadNotifications effect dependency to subscription IDs
- pass stable onExpandedChange callback to NotificationCard
- pass stable callbacks to SidebarTopicItem to preserve memo
- hoist static ReactMarkdown config to module scope in MarkdownContent
- use counting loop for unreadCount in NotificationList
- use Map index for O(1) theme lookup in getThemeById
- deduplicate totalUnread computation and use single-pass loop
- memoize AppContext provider value object
- memoize ThemeProvider context value and callbacks
- replace lucide-react barrel imports with direct path imports
- fix double getInitialState() call in ThemeProvider
- replace filter().length with counting loops in unread counts
- add reverse index for O(1) notification-to-topic lookup
- add content-visibility for notification list items
- memoize AppLayout, SidebarTopicList, and unreadCount
- lazy load SettingsDialog to code-split settings UI
- replace barrel imports with direct imports
- lazy load MarkdownContent to code-split react-markdown
- spawn notification display as background task
- optimize N+1 queries in subscription lookups
- add in-memory cache to reduce OS keychain access
Refactor
- extract duplicated subscription SQL to constant
- use toSorted() for immutable notification sorting
- simplify release changelog to use git log and gh CLI
- add granular settings queries to avoid unnecessary credential lookups
- remove unnecessary 100ms sleep
- reorganize BehaviorTab layout
- improve notification components
Documentation
- rewrite feature list and fix formatting
- document sync Mutex design trade-off in async context
Miscellaneous
- import sorting
- remove unused test dependencies
- remove unused web-vitals
- remove unused @radix-ui/react-avatar
- move @radix-ui/react-collapsible to ui package
- remove CHANGELOG.md and update script reference
- bump version to 1.0.0
- update Cargo.lock and apply rustfmt formatting
- remove unused r2d2 feature from diesel
- update dependencies and add react-collapsible
- release 0.7.0
- add red logo variant
- update .gitignore with IDE and system files
Ntfier v0.6.0
Bug Fixes
- resolve TypeScript type errors in settings UI
- enable Show images option in notifications settings
Features
- show system notifications on startup sync
- implement show images in Windows Enhanced notifications
- add Windows Enhanced notification settings UI
- add radio-group component for notification settings
Miscellaneous
- bump version to 0.6.0
Styling
- fix formatting in UI components
Ntfier v0.5.0
Full Changelog: v0.4.0...v0.5.0
Ntfier v0.4.0
Full Changelog: v0.3.0...v0.4.0
Ntfier v0.3.0
Full Changelog: v0.2.1...v0.3.0
Ntfier v0.2.1
Full Changelog: v0.2.0...v0.2.1
Ntfier v0.2.0
See CHANGELOG.md for details.