orchidsoftware / orchidsoftware/platform

Notification sound / favicon change + JS event listener for persistent notifications

Open
#3,074 1 comment 0 reactions 1 assignee View on GitHub

@tabuna is already working on this.

Since Feb 16, 2026.

Docs
Dominant language
PHP
Stars
4.8k
Forks
663
Avg merge
1d 9h
Merged PRs (30d)
7

Description

Is your feature request related to a problem? Please describe.
Currently, when users receive notifications (especially persistent ones), there is no visual or audio indication unless they are actively looking at the notification area.

This creates a usability issue — users may miss important events because:

  • No sound is played
  • Favicon does not change
  • No browser-level signal appears
  • No JS hook exists to react programmatically

This is especially frustrating in back-office workflows where real-time awareness matters.


Describe the solution you'd like
It would be great to have built-in support for signaling incoming notifications, for example:

  • Optional notification sound
  • Favicon badge / change
  • Browser tab title change

Additionally, it would be very useful to expose a JavaScript event listener that fires when persistent notifications change.

Example API idea:

document.addEventListener('orchid:notification', function (event) {
    console.log('Notification updated', event.detail);
});

This would allow developers to implement custom behaviors such as:

  • Playing custom sounds
  • Updating favicon badges
  • Triggering toast popups
  • Integrating with external UI systems

The event could fire when:

  • A new persistent notification appears
  • Notification state changes
  • Notification is removed/read

Describe alternatives you've considered

Workarounds currently include:

  • Polling notification endpoints manually
  • DOM mutation observers
  • Custom broadcasting implementations
  • Replacing the notification system entirely

However, these approaches are brittle, inefficient, and tightly coupled to internal markup.

A native event would be cleaner and more extensible.


Additional context

This feature would significantly improve UX for admin panels and monitoring dashboards built on the platform.

It also enables richer integrations without modifying core code.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.