Sweet Alerts 20409 has been my go-to library for JavaScript alerts forever and it continues to be with their Vue.js wrapper vue-swal 135.
This library is so flexible! The alerts can be configured with buttons/actions, text, icons and various closing triggers. But besides simple alert popups Sweet Alerts also support more complex use-cases like nested alerts or the use of AJAX functions.
The design of the alert popups fits many project styles out-of-the-box - I rarely have to customize heavily. But you can of course use your own styling and content templates.
The default animations of the popup box and the icons included are timed really well but can get a bit annoying if the user will see these notifications a lot (or for you when testing your code…).
From a usability perspective, I usually use Sweet Alerts for actionable and more important notifications, like when I need the user confirm the deletion of an item in a CRUD view.
For toasts (informational notifications), I love the Vue Toasted Library 1450! The notifications can be configured with custom actions, duration, text and icons (Material Icons, Fontawesome or Material Design Icons). Besides 3 available styles you can also choose whether the toast should be displayed full-width.
Browser support is awesome, as well as touch- and mobile-compatibility.
Vue Toasted also is officially used by Nuxt.js!
Noty 6533 is a dependency-free JavaScript notification library. It’s the first alert library I found that supports Web Push Notifications additional to “normal” alerts.
It provides 11 layouts (= positions on the screen or in a container), 5 notification styles (= alert / success / warning / error / info), and 9 themes (= colour palettes and overall styles). It’s also highly customizable, so you can create custom templates and use your own animations. It also supports using animate.css, mo.js, bounce.js, velocity and other libraries.
To manage your notifications, Noty offers a named queue system, API methods & Callbacks.
vuejs-noty 121 is a Vue.js wrapper for the library.
Vue Notification
vue-notification is a simple and pretty lightweight notification library.
You can choose between CSS and velocity-Animations for your notifications and customize duration, speed, positions and size. It offers 3 styles for success / error / warning alerts, but custom templating and styling is also possible.
Despite being a bit more limited than f.ex. Noty, this library covers everything I usually need in notifications without unnecessary overhead.
Vue Snotify 666 provides many configuration options while still being pretty lightweight.
You can choose icons, a backdrop, timeouts, positions, 3 different styles, progress bars and more. Templates include not only simple alerts, but also input prompts with validation.
The default styles tend to be a bit too particular for me to use this library out-of-the-box in my projects, but can easily be customized with styles and custom CSS animations.
Snotify also provides a built-in system for asynchronous notifications which might come in handy!
#vuejs #javascript #programming #vue-js