75 releases (stable)

8.0.0 Jan 10, 2025
7.0.0 Oct 25, 2024
6.1.1 Aug 21, 2023
6.0.1 Jun 15, 2023
0.0.1 Dec 20, 2014

#5 in Filesystem

Download history 435610/week @ 2025-01-22 456924/week @ 2025-01-29 534658/week @ 2025-02-05 472507/week @ 2025-02-12 521976/week @ 2025-02-19 534187/week @ 2025-02-26 545719/week @ 2025-03-05 574529/week @ 2025-03-12 567752/week @ 2025-03-19 565834/week @ 2025-03-26 570308/week @ 2025-04-02 582162/week @ 2025-04-09 552286/week @ 2025-04-16 574482/week @ 2025-04-23 522934/week @ 2025-04-30 455271/week @ 2025-05-07

2,210,715 downloads per month
Used in 1,557 crates (775 directly)

CC0 license

180KB
3K SLoC

Notify

» Crate » Docs » CI » Downloads » Conduct » Public Domain

Cross-platform filesystem notification library for Rust.

As used by: alacritty, cargo watch, cobalt, deno, docket, mdBook, rust-analyzer, watchexec, watchfiles, xi-editor, and others.

(Looking for desktop notifications instead? Have a look at notify-rust or alert-after!)

Platforms

  • Linux / Android: inotify
  • macOS: FSEvents or kqueue, see features
  • Windows: ReadDirectoryChangesW
  • iOS / FreeBSD / NetBSD / OpenBSD / DragonflyBSD: kqueue
  • All platforms: polling

License

notify is licensed under the CC Zero 1.0.
notify-types is licensed under the MIT or Apache-2.0 license.
notify-debouncer-mini is licensed under the MIT or Apache-2.0 license.
notify-debouncer-full is licensed under the MIT or Apache-2.0 license.
file-id is licensed under the MIT or Apache-2.0 license.

Origins

Inspired by Go's fsnotify and Node.js's Chokidar, born out of need for cargo watch, and general frustration at the non-existence of C/Rust cross-platform notify libraries.

Originally created by Félix Saparelli and awesome contributors.

Dependencies

~0.2–8.5MB
~67K SLoC