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

#4 in Filesystem

Download history 265867/week @ 2024-10-30 296590/week @ 2024-11-06 623720/week @ 2024-11-13 573783/week @ 2024-11-20 323820/week @ 2024-11-27 413414/week @ 2024-12-04 453882/week @ 2024-12-11 323125/week @ 2024-12-18 167876/week @ 2024-12-25 323879/week @ 2025-01-01 479650/week @ 2025-01-08 440506/week @ 2025-01-15 435610/week @ 2025-01-22 456924/week @ 2025-01-29 534704/week @ 2025-02-05 385770/week @ 2025-02-12

1,885,915 downloads per month
Used in 1,428 crates (732 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–8MB
~67K SLoC