@APP_ID@ com.mudeprolinux.whakarere com.mudeprolinux.whakarere CC0-1.0 GPL-3.0-or-later @APP_NAME@ GTK4 WhatsApp Client #25D366 #128C7E

Karere is a production-ready GTK4 WhatsApp client that provides a native desktop experience for WhatsApp Web. Built with Rust, GTK4, and Libadwaita, it offers a clean and intuitive interface that integrates seamlessly with your Linux desktop.

Features:

https://github.com/tobagin/karere/blob/main/data/screenshots/main-window.png?raw=true Main application window with WhatsApp Web integration https://github.com/tobagin/karere/blob/main/data/screenshots/about.png?raw=true About dialog showing application information https://github.com/tobagin/karere/blob/main/data/screenshots/preferences.png?raw=true Application preferences and settings dialog https://github.com/tobagin/karere/blob/main/data/screenshots/shortcuts.png?raw=true Keyboard shortcuts and productivity features https://github.com/tobagin/karere https://github.com/tobagin/karere/issues https://github.com/tobagin/karere/discussions https://github.com/sponsors/tobagin https://github.com/tobagin https://github.com/tobagin/karere https://github.com/tobagin/karere Thiago Fernandes 768 keyboard pointing touch Network InstantMessaging Chat whatsapp chat messaging web communication @APP_ID@.desktop
  • Notification Chat Linking: Clicking a notification now opens the specific chat in Karere.
  • Webcam Support: Added support for using the webcam (Status updates, Video calls) with a new permission dialog.
  • Enhanced image paste with Base64 encoding for reliable WhatsApp Web compatibility
  • Added middle-click paste from primary selection (selected text)
  • Fixed double-paste issue with middle-click
  • Fixed missing GSettings schema in Flatpak builds
  • Added new application icons
  • Corrected metadata description references
  • Switch to XDG Notification Portal (ashpd) for better sandboxing support
  • Remove direct D-Bus notification permissions for cleaner manifest
  • Fixed Open action for downloaded files
  • Fixed Dead Key/composition input issues
  • Migrated Flatpak build logic to meson.build
  • Switch to XDG Background Portal for autostart (improves security and compatibility)
  • Add new contributor Sabri Ünal to the About dialog
  • General improvements and versioning updates
  • Restore autostart permission for improved compatibility
  • Remove unnecessary autostart permission to satisfy linter
  • Add xdg-config/autostart permission for autostart support

Bug Fix Release

Changes:

  • Fixed missing tray icon on GNOME by adding StatusNotifierWatcher permission

Update and Bug Fix Release

Changes:

  • Added "Run on Startup" toggle in preferences (default: false)
  • Fixed autostart toggle pathing for Flatpak environments
  • Fixed tray icon quit behavior
  • Added striped symbolic icons for development version

πŸŽ‰ Major Release 2.0.0

New Features:

  • Full rewrite in Rust! πŸ¦€
  • New System Tray Icon support
  • Notifications fully working with persistence fixes
  • Ported from Vala to native Rust/GTK4/Libadwaita
  • Redesigned/streamlined preferences dialog
  • Enhanced performance and stability

πŸ› Bug Fix Release

Fixed:

  • Fixed critical startup freeze (spinner) issue by implementing D-Bus activation
  • Ensure application starts properly in the background without delay

πŸŽ‰ Feature Release

New Features:

  • 🎀 Microphone permission support for voice notes
  • πŸš€ Start in background option for autostart
  • πŸ”„ Manual reload and auto-reload on network reconnection

Improvements:

  • ⚑ Performance optimizations for startup and shutdown
  • πŸ“ Async dictionary loading for smoother Spell Check initialization
  • πŸ“– Added MPRIS workaround documentation

Bug Fixes:

  • Fixed missing dictionaries on startup
  • Fixed application freeze during lifecycle events

πŸ”§ Maintenance Release

Improvements:

  • Updated build configuration and dependencies
  • Enhanced packaging for better compatibility
  • Minor bug fixes and stability improvements

πŸ“ Documentation and Metadata Update

Improvements:

  • Updated about dialog screenshot
  • Updated application screenshots
  • Minor README corrections

πŸ“Έ Screenshots and Documentation Update

Improvements:

  • Updated application screenshots with current UI appearance
  • Refreshed About dialog screenshot
  • Enhanced visual documentation for users

πŸŽ‰ Version 1.0.0 - Major Milestone Release

New Features:

  • βœ… Fixed WhatsApp Web notification banner persistence
  • βœ… Fixed notifications not working properly
  • πŸ–ΌοΈ Added image paste support via clipboard (Ctrl+V)
  • πŸ“₯ Implemented download manager with custom directory and toast notifications
  • β™Ώ Enhanced accessibility with screen reader optimization and keyboard navigation
  • πŸ“ Added comprehensive spell checking system with auto-detection
  • πŸ”€ Integrated 80+ language dictionaries from LibreOffice
  • ⌨️ Added keyboard shortcuts dialog using AdwShortcutsDialog

Bug Fixes:

  • Fixed Ctrl+V paste for text content - now works for both text and images
  • Fixed WhatsApp notification permission not persisting across sessions
  • Fixed notifications banner appearing on every app launch
  • Fixed WebView zoom being enabled by default (now disabled)
  • Fixed clipboard manager intercepting all paste events
  • Removed hardcoded blueprint compiler paths for cross-architecture support

Code Quality Improvements:

  • ♻️ Major refactor: Reorganized codebase with PascalCase filenames
  • ♻️ Refactored Window.vala into specialized manager components
  • ♻️ Removed custom logging and crash reporting (use system journalctl)
  • πŸ—‘οΈ Removed Do Not Disturb feature (handled by system notification daemon)
  • πŸ—‘οΈ Cleaned up obsolete test files and unused dependencies
  • πŸ—‘οΈ Removed json-glib, gee, and libsoup dependencies
  • 🧹 Centralized settings management with SettingsManager singleton
  • 🧹 Removed DependencyContainer.vala (unused dependency injection)
  • πŸ“Έ Reorganized screenshots into data/screenshots/ directory

Technical Changes:

  • Implemented UserScript injection for Notification.permission state
  • Connected show_notification signal handler for WebKit notifications
  • WebKitGTK 6.0 storage persistence verified and documented
  • Updated SettingsManager to be the default for all settings access
  • Improved build system with cleaner dependency management

Documentation:

  • πŸ“š Enhanced README with accessibility features documentation
  • πŸ“š Documented all keyboard shortcuts by category
  • πŸ“š Added spell checking configuration guide
  • πŸ“š Fixed GitHub repository URLs (karere-vala β†’ karere)

πŸ› Runtime Update and Bug Fixes

Improvements:

  • Updated GNOME runtime to version 49 for enhanced compatibility
  • Improved system integration with latest platform libraries
  • Better support for modern desktop environments
  • Enhanced stability and performance optimizations

Bug Fixes:

  • Resolved compatibility issues with newer GNOME environments
  • Fixed potential rendering inconsistencies
  • Improved error handling and recovery mechanisms

✨ Enhanced Emoji Support, External Link Handling, and Build Improvements

New Features:

  • Added high-quality Noto Color Emoji fonts (v2.047, Unicode 16.0 support)
  • Enhanced WebKit rendering with maximum hardware acceleration
  • Improved emoji consistency with bundled font system
  • Optimized font loading to eliminate display conflicts
  • Added WebKit cache control setting for improved rendering consistency
  • Cache disabled by default to prevent emoji rendering issues

Bug Fixes:

  • Fixed external links not opening in default browser when running in Flatpak
  • Improved external link handling with proper Flatpak portal support
  • Fixed random emoji display issues and blank emoji problems
  • Fixed invalid meson version requirement preventing builds
  • Corrected dependency version specifications in meson.build
  • Resolved flatpak-builder compatibility issues
  • Enhanced URL validation for external link detection

Improvements:

  • Eliminated WebKit cache corruption affecting emoji rendering
  • Streamlined font stack for consistent emoji appearance
  • Enhanced 2D canvas acceleration for better graphics performance
  • Improved font loading stability and reduced race conditions
  • Better sandboxed environment compatibility
  • More reliable link opening mechanism
  • Enhanced logging for external link operations
  • Better build system compatibility with different environments
  • Enhanced CI/CD pipeline stability
  • More robust dependency handling

Technical Changes:

  • Removed unnecessary mobile user agent switching (WhatsApp Web is desktop-only)
  • Disabled problematic WebKit caches causing font corruption
  • Simplified emoji font configuration to single high-quality source
  • Restored Safari Linux user agent for native WebKit experience
  • Added subpixel font scaling and advanced rendering optimizations
  • Implemented Flatpak portal system for external link handling

πŸ”§ Code Refactoring and Architecture Improvements

Improvements:

  • Converted template files to preprocessor directives for cleaner code
  • Eliminated .vala.in template substitution system
  • Added compile-time conditional compilation using DEVELOPMENT flag
  • Improved build system maintainability and type safety
  • Added contributors Aman Das and Cameo to about dialog

Technical Changes:

  • Replaced window.vala.in and preferences.vala.in with direct .vala files
  • Updated meson.build to use Vala preprocessor directives
  • Simplified source file management in build system

πŸ› Bug Fixes and Improvements

Bug Fixes:

  • Fixed crash when handling invalid user input data
  • Resolved memory leak in notification cleanup
  • Corrected accessibility focus handling

Improvements:

  • Better error handling for network timeouts
  • Enhanced stability for extended usage
  • Performance optimizations for scrolling

πŸ”§ Metadata and Standards Compliance

Bug Fixes:

  • Fixed duplicate provides tags in metainfo validation
  • Corrected AppStream metainfo format compliance
  • Resolved invalid markup in release descriptions

Improvements:

  • Updated all references from appdata to metainfo format
  • Enhanced Flathub compliance and validation
  • Improved translation file consistency

πŸ› Bug Fixes and Improvements

Bug Fixes:

  • Fixed crash when handling invalid notification data
  • Resolved memory leak in WebKit manager cleanup
  • Corrected window state persistence on shutdown

Improvements:

  • Better error handling for network disconnections
  • Enhanced stability during long sessions
  • Performance optimizations for faster startup

πŸš€ Major Architecture Migration: Python to Vala/GTK4

BREAKING CHANGE: Complete rewrite from Python to native Vala for better performance and integration.

⚠️ Important: After upgrading, you will need to re-sync your mobile device with WhatsApp Web as this is a completely new application implementation.

New Features:

  • Native Vala/GTK4 implementation for optimal performance
  • Modern LibAdwaita UI with Blueprint declarative interface
  • Enhanced WebKitGTK 6.0 integration
  • Advanced notification system with native desktop integration
  • Comprehensive accessibility support
  • Professional logging and crash reporting system
  • Keyboard shortcuts and productivity features
  • Multi-language spell checking support
  • Granular privacy and notification controls
  • Hardware-accelerated rendering
  • Improved memory efficiency and startup performance

Technical Improvements:

  • Migrated from Python 3 to native Vala compilation
  • Modern Meson build system with Blueprint UI compilation
  • Comprehensive test suite with unit and integration tests
  • Production-ready error handling and crash recovery
  • Enhanced security with proper sandboxing
  • Complete internationalization support
moderate mild