Notiflow
July 26, 2026 · View on GitHub
A modern toast/notification library for Angular — signal-based, standalone, and zoneless-safe, built without @angular/animations. A familiar successor to the archived ngx-toastr, published on npm as ngx-notiflow.
Full documentation lives in the package README:
projects/ngx-notiflow/README.md. Migration from ngx-toastr:MIGRATION.md.
Install
npm i ngx-notiflow
Peer dependencies: Angular >= 22 (@angular/core, @angular/common) and rxjs >= 7.
Quick look
// app.config.ts
import { provideNotiflow } from 'ngx-notiflow';
export const appConfig = { providers: [provideNotiflow({ duration: 5000 })] };
<!-- app root template -->
<nfl-container />
import { inject } from '@angular/core';
import { NotiflowService } from 'ngx-notiflow';
const notiflow = inject(NotiflowService);
notiflow.success('Saved!', { title: 'Done' });
Features
- Six positions, each an autonomous region with correct stacking
- Per-region limit and FIFO queue
preventDuplicateswith a×Ncounter badge- Auto-dismiss timers with region-wide pause-on-hover
- Promise toasts (accepts a
Promiseor anObservable) - Serious accessibility: two central ARIA live regions,
Escapeto close,prefers-reduced-motionaware - Signals + zoneless,
OnPush, no@angular/animations
Repository layout
This is an Angular CLI workspace with two projects:
projects/ngx-notiflow/— the publishable library (the actual package).projects/demo/— a manual test harness with buttons for every type, position, and behaviour.
Development
ng build ngx-notiflow # build the library into dist/ngx-notiflow
ng serve demo # run the demo harness at http://localhost:4200
ng test ngx-notiflow # run unit tests (Vitest)
The demo imports the library from dist/ (via a tsconfig path), so rebuild the library after changing library source. Tip: ng build ngx-notiflow --watch in a second terminal.
Contributing
Issues and pull requests are welcome. This is an early-stage project (v0.1.x) — feedback on the API before it stabilises is especially valuable.
License
MIT © Philipp Schimmer