30 open-source projects similar to paulmillr/chokidar, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.
fsnotify is a cross-platform filesystem notification library that provides a programming interface for tracking file and directory changes within Go applications. It utilizes native kernel notification interfaces to detect events such as file creation, deletion, and attribute updates, allowing developers to integrate real-time monitoring into their software. The library distinguishes itself by providing a unified abstraction layer that normalizes disparate kernel APIs into a consistent event stream. It manages high-volume activity through non-blocking event polling and internal memory bufferi
fswatch is a cross-platform file change monitor that watches files and directories for modifications using the native event API of each operating system. It functions as a multi-backend file watcher library that selects from platform-specific backends such as inotify, kqueue, and FSEvents, with a polling fallback when no native API is available. The tool groups multiple file changes into a single event batch and triggers one command per batch, while also executing user-specified commands each time monitored files or directories are modified. The project applies include, exclude, event-type, a
Air is a live reload tool and build automation utility for Go applications. It functions as a hot reloading orchestrator that monitors source files for changes to automatically recompile and restart application binaries. The tool distinguishes itself by offering a managed build and execution pipeline, allowing for custom build commands, environment variable injection, and platform-specific build overrides based on the host operating system. It further synchronizes the development cycle by using a proxy to signal web browsers to reload automatically when static files or source code are modifie
fswatch is a cross-platform file change monitor and event automation tool. It tracks file system modifications across different operating systems using native kernel event APIs or a portable polling fallback. The project implements specific wrappers for Linux systems using inotify and fanotify, as well as a watcher for BSD and macOS using kqueue. It translates these platform-specific APIs into a unified event format to provide consistent monitoring behavior. The tool allows for the automatic execution of external programs or scripts in response to detected changes. It includes capabilities f
Watchman is a filesystem change monitor and recursive directory watcher that operates as a background service to track file modifications in real time. It functions as an event-driven file trigger and state query engine, allowing users to retrieve directory snapshots and lists of changed files since a previous check. The project provides tooling for incremental builds by identifying exactly which files have changed to compile only necessary project components. It is designed for large scale directory watching, monitoring massive file trees while executing external commands or scripts automati
Watchexec is a command-line task runner and file system change trigger that automates developer workflows by executing scripts or programs when files in a directory are modified. It functions as a process lifecycle manager, ensuring that triggered child processes and process groups are managed and restarted cleanly. The tool provides path filtering to restrict monitoring to specific extensions or directories and utilizes debouncing to group rapid bursts of file system notifications into a single execution. It supports propagating the list of modified files to the executed command via standard
MoviePilot is a self-hosted media orchestrator and NAS media library automator. It coordinates workflows between downloaders, metadata scrapers, and file systems to automate the discovery, downloading, renaming, and organization of movie and television content. The system functions as an LLM media management agent, allowing users to control subscriptions, searches, and file organization through conversational text commands. It also acts as a Model Context Protocol server, exposing internal media management tools via a standardized interface for external AI clients and agents. The project inc
Air is a command-line utility designed to automate the development lifecycle for Go applications. It functions as a build runner that monitors source code for file-system modifications, automatically triggering rebuilds and process restarts to maintain an updated development environment. The tool distinguishes itself by integrating container-isolated execution, allowing developers to run build and test workflows within consistent, ephemeral environments. It also incorporates a reverse-proxy layer that intercepts network traffic to facilitate live-reloading of browser sessions, ensuring that c
This framework is a cross-platform software development kit designed for building native mobile and desktop applications from a single shared codebase. It provides a unified programming interface that allows developers to construct user interfaces using declarative markup, which are then rendered as native components on each target operating system. The framework distinguishes itself through a multi-targeting build system that consolidates platform-specific resources and native control mapping into a unified project structure. It includes a data-driven binding engine that synchronizes applica
This project is a runtime utility designed to execute TypeScript files directly, removing the need for manual build steps or complex configuration. It functions as an execution engine that processes source code in memory, enabling rapid iteration during development. The tool distinguishes itself by integrating directly with the module resolution system to handle path aliases and reconcile differences between legacy and modern module formats. By intercepting the import process, it ensures consistent execution across diverse project structures and dependency types. Beyond direct execution, the
Nodemon is a command-line utility designed to automate development workflows by monitoring file system changes and managing the lifecycle of long-running processes. It functions as a process monitor that tracks directory trees for modifications, automatically terminating and restarting applications to ensure a continuous feedback loop during the coding process. The tool distinguishes itself through its language-agnostic design, which decouples monitoring logic from the target application's runtime. While it provides default support for Node.js, it can execute arbitrary command-line instructio
GitUI is a terminal-based interface for managing Git repositories, providing an interactive environment for executing version control operations, inspecting commit logs, and navigating file hierarchies. It functions as a keyboard-driven client that allows users to stage changes, manage branches, and review project history directly from the command line. The application distinguishes itself through a focus on interface responsiveness and user-defined workflows. It utilizes background thread offloading and asynchronous data caching to maintain performance during complex operations, while offeri
CompactGUI is a graphical manager for the Windows Compact OS API. It serves as a transparent compression tool and filesystem optimizer that reduces disk space for programs and folders while maintaining full application functionality and accessibility. The project distinguishes itself through a community compression database, which allows users to retrieve and submit estimated compression ratios and times for specific software. This shared data system enables the prediction of potential space savings before applying compression. The tool covers several operational areas, including performance
User-friendly glob matching
fs with incremental backoff on EMFILE
Flexible and fluent interface for searching the file system
Move a file, directory, or symlink - Even works across devices
Find a file or directory by walking up parent directories
node-fs-extra is a Node.js file system extension that provides a set of additional methods to simplify common file and directory operations. It functions as a recursive directory manager, a JSON file processor, and a file asset manipulator, extending the standard library to provide high-level utilities for managing assets on disk. The project distinguishes itself through recursive capabilities, such as duplicating or removing nested folder structures and ensuring that all missing parent directories are automatically generated when creating files or symbolic links. It also integrates a JSON se
rimraf is a Node.js recursive file deletion tool and cross-platform filesystem utility. It provides both a programmatic library and a command-line interface for removing files and directories and all of their contained contents across different operating systems. The utility supports glob-based file deletion, allowing the removal of items that match specific wildcard patterns rather than just literal paths. It also includes the ability to abort deletion processes mid-execution and apply custom predicate-based filtering to exclude specific files or folders. The project covers broad filesystem
Determine if a filename and/or buffer is text or binary. Smarter detection than the other solutions.
Font Manager is a graphical utility designed for the organization, installation, and activation of system fonts. It provides a centralized interface to manage typeface libraries, allowing users to group fonts into custom collections and toggle their availability across the desktop environment. The application distinguishes itself through deep integration with the operating system, including native context menu injection that allows users to trigger management tasks directly from file explorers. It features automated metadata indexing to categorize fonts based on their internal properties and
Neutralinojs is a lightweight cross-platform desktop application framework that allows developers to build native applications using web technologies and a C++ backend. It serves as a native system API bridge, enabling JavaScript frontend code to execute system commands and manage files across Windows, macOS, and Linux. The project distinguishes itself as a portable runtime that renders interfaces via the system's built-in webview instead of bundling a full browser engine. This approach enables the packaging of web assets into small, standalone executable binaries. The framework provides com
Checkstyle is a Java static analysis tool and linter designed to identify and enforce coding standards and best practices. It functions as a code quality auditor and Javadoc validation tool, checking source code against configurable rulesets to ensure structural and stylistic consistency. The project allows for the creation of custom linting rules by extending a core API to inspect the abstract syntax tree. It further enables specialized validation through the use of XPath expressions to query the syntax tree for specific code patterns and violations. Capability areas include the enforcement