A configurable notification manager for NeoVim with animated windows, history, and custom rendering.
nvim-notify is a notification manager plugin for NeoVim that replaces the default notification system with a configurable and animated alternative. It allows developers to display styled, interactive notifications within the editor, supporting custom animations, rendering styles, and history tracking. The plugin solves the problem of bland, static notifications by offering a rich, extensible interface for plugin and user messages.
NeoVim users and plugin developers who want enhanced, visually appealing notifications with features like animations, history, and custom styling. It's particularly useful for those building or using plugins that provide frequent user feedback.
Developers choose nvim-notify for its high degree of customization, smooth animations, and seamless integration with NeoVim's ecosystem, including Telescope for history search. It offers a superior alternative to the default notifications without compromising performance or flexibility.
A fancy, configurable, notification manager for NeoVim
Supports multiple animation styles like fade, slide, and static with custom stage functions, enhancing visual feedback without blocking the editor.
Offers built-in render styles (default, minimal, simple, compact) and allows custom rendering functions, giving full control over notification appearance.
Provides a history of notifications viewable via Telescope integration or a dedicated :Notifications command, enabling easy tracking of past messages.
Enables syntax highlighting inside notifications by setting custom filetypes, useful for displaying code snippets or formatted content with proper highlighting.
Works with plenary's async library to avoid callback nesting and allows real-time updates to existing notifications, improving responsiveness for plugin developers.
The animation stages API is marked as a prototype and open to change, which may lead to breaking updates for users relying on custom animations, as admitted in the README.
Requires a font with glyphs (e.g., Nerd Fonts) and 24-bit color enabled via termguicolors, which can be unsupported in some terminals or minimalist setups.
Full history viewing with search requires Telescope integration, adding an external dependency that might not be desired in lightweight or dependency-averse configurations.
Extensive customization options, including Lua-based setup and highlight definitions, can be overwhelming for users seeking simple, drop-in functionality without deep editor tweaking.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.