All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
- No unreleased changes documented yet.
v0.5.5 - 2026-04-09
- Improved message link handling for email addresses, whitespace-preserving rendering, and dedicated link message parsing.
- More resilient unread indicator updates across active chat lists.
- Localized grouped chat dates and relative timestamps.
- Improved member action dropdown behavior so menus switch cleanly instead of stacking.
- Smoothed initial chat scroll behavior and refined chats input spacing.
- Prevented delete-for-everyone from rehydrating removed messages and causing 404s for other participants.
- Fixed realtime unread indicator sync and tightened
loadMoreand scroll stability in chat and chats-list views.
v0.5.4 - 2026-04-06
- Configurable unread indicator APIs and reactive chat preview badges.
- Configurable message link parsing with allowed TLD defaults and message-body URL parsing.
- Renamed the link parsing configuration to
message_linksand the internal parser toparseMessageUrls.
- Kept the widget chat drawer mounted across refreshes.
- Fixed undefined media handling and message action styling regressions.
v0.5.3 - 2026-03-27
- Fixed the send message action button background color.
v0.5.2 - 2026-03-27
- Widget wrapper UI props and refreshed dark palette options.
- Added Laravel 13 compatibility and aligned upload finalization with Livewire 4.
- Refactored model boot hooks to use
booted()and renamed component style properties for consistency.
- Preserved image attachment detection for Livewire 3 and 4 uploads.
- Fixed modal and drawer layering plus scroll blocking when widgets or overlays are open.
v0.5.1 - 2026-03-24
- Panel chat actions now support custom icons and icon attributes.
- Improved tooltip accessibility, focus handling, and mobile touch support in header actions.
- Added cursor-pagination coverage plus configurable service model resolution and storage disk env support.
- Improved chats list pagination, rerender behavior, and responsive widget/sidebar interactions.
- Updated redirect-to-home handling and return controls for widget and mobile contexts.
- Fixed UUID-safe load-more ordering with deterministic cursor tie-breakers.
- Resolved icon rendering, attribute merge, and redirect rendering bugs in chats actions.
v0.5.0 - 2026-01-30
- Updated Wirechat to support Livewire v4.
- Improved internal component resolution for newer Livewire lifecycle behavior.
- Refined ChatWidget open/close handling for better stability.
- Updated and stabilized tests for Livewire v4.
- Fixed duplicate close events caused by multiple dispatches.
v0.4.1 - 2026-01-29
- Fixed rollback logic so legacy
sendable_idandsendable_typefields are restored correctly.
v0.4.0 - 2026-01-29
- Improved internal message sender handling using participants instead of polymorphic fields.
- Rollback now correctly restores legacy
sendable_idandsendable_type. - General bug fixes and stability improvements.
- Compatible with Livewire v3.
- This line is maintenance-only (no new features).
0.3.0 - 2025-12-24
- Added
hasRoutes()support so panels can opt out of automatic route registration.
- Hardened auth-user access checks around route registration for the stable 0.3.0 release.
v0.3.0-beta4 - 2025-11-12
- A new feature
registerRoutes(bool|Closure $condition = true)API on the Panel class.
v0.3.0-beta3 - 2025-11-09
- Reverted migrations that changed
actionable_id,attachable_idandattachable_idto string in their respective tables.
- Excessive panel-related logging.
- Typos in CSS classes.
v0.3.0-beta2 - 2025-09-30
- Command to publish a migration to update
actionable_id,attachable_idandattachable_idto string in their respective tables.
v0.3.0-beta1 - 2025-09-29
Transition from config-based to Panel-based settings for a cleaner, extensible way to define Wirechat environments.
- Introduced Panels as the new core system for managing chat environments (e.g., user, admin, support).
- New
ChatsPanelProvidergenerator (php artisan make:wirechat-panel). wirechat:upgrade-namespace-to-v0.3xcommand to migrateNamu\WireChat→Wirechat\Wirechat.wirechat:upgrade-to-v0.3xcommand to migrate oldconfig/wirechat.phpto panel providers.wirechat:upgrade-morph-columnscommand to ensure polymorphic relations work with both UUID and bigint IDs.WireChatUserinterface andInteractsWithWireChattrait for user models.- TailwindCSS v4.0+ support.
- Panel-specific user search (
searchUsersUsing) for flexible customization. - Support for panel-based notifications with
NotifyParticipantrequiring panel IDs.
- Attachment URLs now resolve storage/visibility from the current panel.
- Improved avatar component: falls back to SVG when image load fails.
- Migrated
searchChatableslogic from User model → panel-based search. - Storage configuration moved from
attachments.*keys to newstorage.*keys. - UUID configuration clarified with
uses_uuid_for_conversationskey. - Accessor methods renamed with
wirechatprefix (getAvatarUrlAttribute→getWirechatAvatarUrlAttribute, etc.). - Renamed
Chatabletrait →InteractsWithWireChat.
- Old
namu/wirechatpackage (remove after upgrade). - Legacy
attachments.*config keys. - Old
uuidsconfig key (replaced byuses_uuid_for_conversations). - Old
Chatabletrait name (backwards-compatible for now). - Legacy accessors (
getAvatarUrlAttribute,getProfileUrlAttribute,getDisplayNameAttribute).
- Panel migration ensures existing
config/wirechat.phpcustomizations are preserved. - Morph column upgrader ensures idempotent, safe migrations without breaking existing foreign keys.
v0.3.0-alpha2 - 2025-09-28
- Fixed flickering overflow in the group creation flow.
v0.3.0-alpha1 - 2025-09-28
- First alpha of the panel-based architecture, including panel providers, panel-aware search, and UUID migration tooling.
- Added emoji configuration options, language updates, and panel-aware route/channel resolution.
- Moved attachment URL resolution and UI settings into the panel system.
- Fixed avatar fallback behavior and a broad set of panel migration and test stability issues.
v0.2.11 - 2025-09-26
- Added French translations.
- Fixed long message text wrapping and minor translation cleanup.
v0.2.10 - 2025-05-22
- Fixed close button not working correctly when chat component is widget
v0.2.9 - 2025-05-15
- Added misssing closing tag in chat-list component
v0.2.8 - 2025-05-04
uuidsconfiguration option to toggle UUIDs for new installations
- Improved handling of storage URLs when saving attachments
- Encrypted parameter keys for Blade method actions to enhance security
v0.2.7 - 2025-04-25
- Changelog tag links missing prefix 'v'
- Style: in new-group button to use correct/updated css variable
- Failing tests
v0.2.6 - 2025-04-25
- New Theme documentation page.
- Support for defining CSS variables directly in a single
themeconfiguration entry.
- Theme system now uses the new CSS variable-based theming approach.
- Improved file storage logic to better support S3 and disk visibility handling.
v0.2.5 - 2025-04-15
wirechat.attachments.disk_visibilityconfig option to determine if temporary URLs should be generated for private storage disks
- Attachment upload now uses single file uploads to support S3 and similar disks that do not handle
temporary_uploaded_fileswith multiple files
- PHPStan errors and improved code style with docblocks
v0.2.4-beta - 2025-03-29
- Early Tailwind CSS v4 compatibility pass.
- Fixed the unwired description property regression.
v0.2.4 - 2025-03-30
- support for Tailwind v4
v0.2.3 - 2025-03-29
- Language file translation keys for labels
- Built-in validation translation keys
- Separate group info page for groups
- Empty search results message for the new chat component
- More tests
- Delete photo button incorrectly acting as a submit button while creating a group
- includes folder to partials in chats and chat directories
v0.2.2 - 2025-03-15
- Storeage url to use storage:disk()->url() instead of static url from database
v0.2.1 - 2025-03-15
- Storage disk to support dynamic storage
- Tests for multiple storage support
v0.2.0 - 2025-03-06
- Support for Laravel 12
v0.1.11 - 2025-03-04
- Introduced native notifications feature for new messages
- New
notificationskey to wirechat configuration
'notifications'=>[
'enabled'=>true,
'main_sw_script' => 'sw.js', // Relative to the public folder
],- Added docs about notification
v0.1.1 - 2025-02-17
- Fixed emoji picker styling in system dark mode.
v0.1.0 - 2025-02-16
- New config variables:
'guards' => ['web']'layout' => 'wirechat::layouts.app'
- Command for publishing views.
- Standalone Wirechat widget.
- Added/Improved documentation on:
- Authorization
- Core Components
- Layout
- Views
- Contribution Guide
- Extending Wirechat Components
belongsToConversationmiddleware added to the/chatsview route.
-
NotifyParticipantchannel now uses an encoded type and ID to support mixed models in conversations.Breaking Change:
If you previously listened to theparticipantchannel, update to the new format:+ userId = @js(auth()->id()); + encodedType = @js(Namu\Wirechat\Helpers\MorphClassResolver::encode(auth()->user()->getMorphClass())); - Echo.private(`participant.${userId}`) + Echo.private(`participant.${encodedType}.${userId}`) .listen('.Namu\\Wirechat\\Events\\NotifyParticipant', (e) => { console.log(e); });
-
Folder Structure ReorganizedWe have restructured the package folders to group related components and assets more logically. This improves view publishing and feature additions. If you have previously published or customized views, please re-publish them using the new command and update any file path references accordingly.
- Updated tests to fully support conversations with mixed models.
- Improved participant handling for different models.
- Optimized code and queries for faster conversation loading.
- Updated brodcasting to use the guards provided in wirechat config the
v0.0.7 - 2024-12-20
- Introduced
ActorandActionabletraits for improved polymorphic relationship handling.- Added tests for
ActorandActionabletraits.
- Added tests for
- Resolved a bug that caused incorrect retrieval of the authenticated participant due to a missing
conversation_idfilter during retrieval.
- Refactored migrations to use
unsignedBigInteger. All polymorphic relationships now use unsignedBigInteger by default to maintain consistency across databases. This resolves a type mismatch issue found during testing on PostgreSQL.
Note: Running php artisan view:clear may be required to ensure the changes take effect.
v0.0.6 - 2024-12-16
- Fixed error caused by missing import in chat blade due to typo.
Note: Runningphp artisan view:clearmay be required to ensure the changes take effect.
v0.0.5 - 2024-12-11
- Fixed unread messages dot not appearing correctly.
Note: Runningphp artisan view:clearmay be required to ensure the changes take effect.
v0.0.4 - 2024-12-8
- Issue template
- MIT license
- CODEOWNERS file to assign reviewers automatically
v0.0.3 - 2024-12-04
- Cleaned up composer and test compatibility for the early Pest 2 and 3 support matrix.
v0.0.2 - 2024-12-04
- Added Pest 3 compatibility and moved read tracking to participants.
- Improved chats query performance and loading transitions.
0.0.1 - 2024-11-30
- Introduced
Wirechatpackage with the following features:- Basic chat functionality for private conversations.
- Group Chats functionality.
- Smart Deletes for:
- Conversations
- Messages
- Messages: sending, receiving, viewing.
- Published initial migrations for conversations and messages.