Changelog
View SourceAll 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.
[Unreleased]
[1.0.2] - 2025-12-28
Fixed
- Nested route support - InboxLive now correctly handles URLs when mounted in nested scopes (e.g.,
/admin/fyiinstead of just/fyi)- Event detail URLs now respect the route prefix where the LiveView is mounted
- Navigation between index and detail views works correctly regardless of scope nesting
[1.0.1] - 2025-12-27
Added
- Automatic HTTP retries -
FYI.Clientmodule with exponential backoff for sink delivery- Retries transient failures (network errors, 5xx status codes) up to 3 times
- Exponential backoff with delays of 1s, 2s, 4s
- Respects
Retry-Afterresponse headers - Configurable via
:http_clientconfig (max_retries, retry_delay)
Changed
- Sinks now use
FYI.Client.post/2for HTTP requests instead of rawReq.post/2
[1.0.0] - 2024-12-26
Added
- Event emission -
FYI.emit/3for emitting events with payload, actor, source, tags, and emoji - Ecto.Multi integration -
FYI.Multi.emit/3for transactional event emission - Slack webhook sink - Send notifications to Slack channels
- Telegram bot sink - Send notifications to Telegram chats
- Event routing - Route events to specific sinks based on glob patterns
- Event persistence - Optional database storage via Ecto
- Admin inbox UI - LiveView-based event viewer with:
- Activity histogram with time-based tooltips
- Time range filtering (5 minutes to all time)
- Event type filtering
- Search by event name or actor
- Event detail panel
- Real-time updates via PubSub
- Feedback component - Customizable feedback widget installed into your codebase
- Igniter installer -
mix fyi.installfor one-command setup - Emoji support - Per-event, pattern-based, and default emoji configuration
- App name identification - Identify events when multiple apps share channels