Frontmatter
| id | 8632 |
| title | Implement Sonic Wave Visual Effects |
| state | Closed |
| labels | enhancementai |
| assignees | tobiu |
| createdAt | Jan 14, 2026, 3:11 PM |
| updatedAt | Jan 14, 2026, 4:21 PM |
| githubUrl | https://github.com/neomjs/neo/issues/8632 |
| author | tobiu |
| commentsCount | 1 |
| parentIssue | 8630 |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Jan 14, 2026, 4:21 PM |
Implement Sonic Wave Visual Effects
tobiu added parent issue #8630 on Jan 14, 2026, 3:17 PM
tobiu assigned to @tobiu on Jan 14, 2026, 4:20 PM

tobiu
Jan 14, 2026, 4:20 PM
Input from Gemini 3 Pro:
✦ I have implemented the "Sonic Wave" visual effects.
Changes:
- Event Bridge (
Portal.view.HeaderCanvas):
- Tracks
mousemove,mouseleave, andclickon theHeaderToolbar.- Syncs button positions (
navRects) and mouse state to the Shared Worker.- Visual Engine (
Portal.canvas.HeaderCanvas):
- Implemented a 60fps render loop in the Shared Worker.
- Aura Effect: Draws dynamic sine-wave underlines for hovered items, reacting to proximity.
- Shockwave Effect: Spawns expanding distortion waves on clicks.
The implementation follows the "Application Engine" pattern (App Worker logic + Shared Worker rendering).
tobiu closed this issue on Jan 14, 2026, 4:21 PM
HeaderCanvas(App Worker) to fetch DOM rects of toolbar items.HeaderCanvas(or the Toolbar items) to track mouse position/hover state.HeaderCanvas(Shared Worker).