30 open-source projects similar to watchexec/watchexec, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Watchexec alternative.
Gulp is a JavaScript build automation tool and Node.js task runner designed to coordinate the execution of development tasks. It operates as a streaming build system that transforms source files into production assets through a series of programmable pipelines. The system functions as a file watcher and task orchestrator, monitoring directories for modifications to automatically trigger specific build tasks. It organizes these units of work into sequential or parallel execution paths to streamline development workflows. The toolkit manages asset pipelines by reading files via pattern matchin
Guard is a command-line file watcher that monitors the filesystem from the terminal and automatically executes user-defined tasks when files are modified, added, or deleted. It functions as a file change watcher and test runner that triggers test suite execution immediately when source or spec files are saved, providing instant feedback during development. The tool is configured through a Ruby-based domain-specific language in a Guardfile, and it can send visual desktop notifications when watched file actions complete or fail. The project distinguishes itself through a plugin-based extension
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
Bacon is a background job runner and text-based user interface test dashboard designed for tracking code health and isolating failing tests. It functions as a developer workflow automator and file system watcher that triggers shell commands and verification tasks automatically when source files are modified. The tool allows for the definition of custom checkers and keyboard shortcuts to accelerate the iteration and debugging process. It provides a focused display for monitoring project health by tracking compilation errors and restricting active jobs to only those tests that have failed. The
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
BrowserSync is a web development synchronization tool and live reload server. It functions as a local static web server, a reverse proxy server for existing sites, and a browser testing orchestrator that coordinates page state across different browsers and physical devices. The tool is distinguished by its ability to mirror user interactions, such as clicks, scrolls, and form inputs, in real time across all connected devices. It also provides a web-based device control interface and the capability to create public URL tunnels for remote testing of local sites. The system covers a broad range
entr is a command-line tool and shell command orchestrator that executes arbitrary terminal commands automatically whenever monitored files are modified. It serves as a Unix file system monitor that maps filesystem events to the execution of user-defined shell commands. The utility functions as a development workflow automator by restarting background processes and refreshing console output to provide immediate feedback during coding. It can terminate and restart long-running services when configuration or source code is updated. The project covers automated task execution and continuous int
Gin is a hot reloading utility and live reloader for Go web applications. It functions as an HTTP proxy development tool that monitors source files for changes and automatically recompiles and restarts the web server to eliminate manual server restarts. The tool manages the development workflow by tracking file-system events and coordinating the sequence of recompiling source code. It handles child-process management for the Go compiler and the application binary, routing incoming traffic to the active server instance and refreshing the process upon the next request following a successful bui
Cake is a cross-platform build automation system and scripting framework that allows users to define software build pipelines using C# scripts. It functions as a CI/CD pipeline orchestrator and build runner, providing a strongly-typed domain-specific language to simplify the orchestration of compilation, testing, and packaging processes across Windows, Linux, and macOS. The system ensures reproducible build environments by pinning the versions of build tools, modules, and dependencies. It distinguishes itself by enabling a C# scripting workflow with full IDE support, including autocomplete, s
Chokidar is a cross-platform file system monitoring library designed to provide a unified interface for tracking disk activity. It functions as a foundational utility for Node.js development environments, enabling applications to detect file additions, modifications, and deletions across diverse operating systems through a consistent event stream. The library distinguishes itself by normalizing inconsistent event signatures from various operating system kernels and implementing robust event debouncing logic. By buffering rapid sequences of file system events and waiting for a quiet period, it
Miniflare is a local simulator and emulator for Cloudflare Workers. It provides a serverless runtime environment on a local machine, allowing for the development and testing of functions and edge APIs without deploying to a production cloud environment. The project implements a local simulation of edge storage primitives, including key-value stores, object storage, and durable objects. It further enables a local integration test bed where serverless functions are executed within isolated sandboxes. The toolset covers a broad development surface, including hot-reloading via file-system monito
Karma is a JavaScript test runner designed for executing test suites across multiple real web browsers to ensure cross-browser compatibility. It functions as a browser-based execution system that launches browsers, captures console output, and provides a command line interface for running automated tests within continuous integration pipelines. The project utilizes a plugin architecture that allows for the integration of third-party launchers, reporters, and preprocessors. It employs an adapter-based framework to execute tests from various assertion libraries through a unified runner interfac
Devtool is a suite of developer tools designed to execute server-side JavaScript code within a browser environment. It functions as a bridge that allows Node.js programs to run inside a Chromium instance, enabling the use of built-in browser developer tools for visual debugging and performance profiling. The project provides a read-eval-print loop for interactive command execution with support for relative imports and piped input. It also includes a file watcher that monitors source files for changes and automatically reloads programs to accelerate the iteration cycle. The system integrates
Playwright is a comprehensive browser automation framework designed for end-to-end testing and web workflow automation. It provides a unified API to drive web applications across multiple browser engines, enabling developers to simulate complex user interactions, perform web scraping, and validate application behavior in consistent, isolated environments. The framework distinguishes itself through a web-first testing paradigm that prioritizes stability and resilience. By utilizing an auto-waiting actionability engine and accessibility-tree-based locators, it eliminates common sources of test
Atuin is a command-line tool that replaces standard shell history with a searchable, encrypted SQLite database. By hooking into shell initialization scripts, it provides an interactive, keyboard-driven interface for real-time command filtering and retrieval. The platform ensures data privacy through a client-side encryption layer, securing sensitive history and configuration data before it is synchronized across multiple machines. Beyond history management, Atuin functions as an executable documentation platform that enables teams to create and share interactive runbooks. These documents use
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
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
Hammerspoon is a programmable automation engine for macOS that enables deep system-level control through a Lua scripting environment. By bridging high-level scripts with native Objective-C APIs, it allows users to interact with the operating system's accessibility tree, intercept hardware input streams, and manage the lifecycle of running applications. The project distinguishes itself through an event-driven architecture that registers asynchronous hooks for system notifications and hardware events. This allows for real-time automation, such as remapping keyboard and mouse inputs, managing wi
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
Devenv is a Nix-based development environment manager that provides declarative definitions for reproducible shells and toolchains. It functions as a declarative task runner for executing dependency-aware pipelines and a service orchestration tool for supervising background processes. The project distinguishes itself by generating OCI container images directly from environment definitions without requiring a separate container engine. It also implements the Model Context Protocol to expose project context and package search to AI agents, and supports AI-assisted scaffolding to generate config
Mocha is a JavaScript test runner and framework designed to execute automated test suites across multiple runtimes, including Node.js and web browser environments. It functions as a pluggable testing tool for organizing and validating unit, integration, and functional tests. The project distinguishes itself through a plugin-based extension interface that allows for custom functionality and reporting. It supports a multi-runtime approach, enabling the same test suite to run in different JavaScript environments, and includes a watch mode that monitors the filesystem to trigger automatic test re
Clojure Koans is an educational platform designed to teach the syntax and core concepts of the Clojure programming language. It provides a structured curriculum of programming challenges that guide users through language features by requiring them to resolve a sequence of failing test cases. The project functions as an interactive learning environment that integrates a test-driven development workflow with automated feedback. By monitoring source files for modifications, the tool triggers immediate test execution whenever a user saves their progress, allowing for real-time verification of cod
Nim is a statically typed, compiled systems programming language designed for high performance and cross-platform development. It translates high-level source code into C, C++, or JavaScript, allowing developers to produce efficient native binaries or web-compatible scripts from a single codebase. The language emphasizes a clean, indentation-based syntax that simplifies code hierarchy while maintaining the power of a full-featured systems language. What distinguishes Nim is its robust metaprogramming framework, which allows developers to inspect, modify, and generate code structures during th
Cargo is the official build system and package manager for the Rust programming language. It provides a unified command-line interface that orchestrates the entire development lifecycle, including compiling source code, managing complex dependency graphs, running tests, and distributing packages through a centralized registry. By utilizing declarative manifest files, it ensures that builds remain reproducible and consistent across different environments. The tool distinguishes itself through its deep integration with the Rust compiler and its sophisticated approach to project management. It f
Redox is a POSIX-compliant, microkernel-based operating system written entirely in Rust. By utilizing a memory-safe language for the kernel and all system components, the project eliminates common vulnerabilities such as buffer overflows and use-after-free errors. Its architecture relies on a minimal kernel that manages only essential hardware and process isolation, delegating all other system services to unprivileged user-space processes. The system distinguishes itself through a modular design where hardware drivers and system services run as independent user-space daemons, allowing them to
This project is a starter template and boilerplate for building isomorphic web applications using React, Redux, and Express. It functions as a server-side rendering framework that generates HTML on the server and rehydrates it on the client to improve search engine optimization and initial page load speeds. The project is distinguished by its focus on developer experience, featuring a configuration for hot module replacement. This allows for the real-time updating of the user interface and application state during development without requiring a full browser refresh. The framework provides c
Czkawka is a cross-platform utility designed for storage optimization and filesystem maintenance. It functions as a comprehensive file analysis engine that identifies redundant data, including duplicate files, empty directories, broken symbolic links, and temporary files. By utilizing hash-based content verification, the tool ensures accurate identification of duplicates regardless of file names or metadata. The project distinguishes itself by offering both a native graphical user interface and a command-line interface, allowing for both interactive management and automated, headless system m
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
Watchdog is a Python library and set of shell utilities for monitoring filesystem events. It provides a framework for tracking real-time changes to files and directories, mapping those events to configurable automation handlers, and executing system actions based on file creation, modification, or deletion. The project includes an event-driven shell utility for triggering custom scripts and commands automatically. It utilizes a configurable handler framework that allows users to associate specific filesystem events with specialized plugin logic defined in configuration files. The system moni