30 open-source projects similar to vishnubob/wait-for-it, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Wait For It alternative.
This project is a comprehensive educational resource consisting of a Bash programming tutorial, scripting reference, and Linux command line manual. It provides instructional materials for writing scripts, automating system tasks, and mastering terminal navigation and Unix system administration. The guides cover a wide range of shell environment customization, including prompt styling and the use of aliases. It also provides a shell environment guide for managing configuration files and initializing user environments. The materials detail a broad set of capabilities including control flow log
s6-overlay is a container init system and process orchestrator. It provides a specialized script environment and a process supervisor to coordinate boot sequences, manage background daemons, and handle read-only filesystems within containers. The project distinguishes itself by using an execline shell environment to avoid the overhead of traditional shell interpreters. It includes a dedicated manager to redirect write operations to temporary memory mounts for containers with read-only root filesystems. The system covers service lifecycle orchestration, including dependency-based startup and
Oils is a Unix shell interpreter and scripting language runtime that combines a modern shell language with POSIX and Bash compatibility. It functions as a structured data shell, integrating JSON and J8 formats to manage complex data without relying on string parsing. The system is distinguished by a C++ transpiled interpreter that converts a subset of Python source code into strongly typed C++ for high-performance execution. It features a garbage-collected typed runtime that supports prototype-based polymorphism, lexical closures, and reference-based variable mutation. To decouple shell logic
Watchtower is a container-based solution designed to automate the lifecycle management of Docker applications. It functions as a background service that monitors running containers, detects when new base image versions are available in registries, and automatically redeploys the containers to ensure they remain synchronized with the latest builds. The project distinguishes itself through its ability to orchestrate complex deployment workflows and maintain service availability during updates. It interacts directly with the container runtime to manage service dependencies and restart sequences,
This project is a suite of basic command line utilities rewritten in Rust, providing a cross-platform implementation of POSIX shell utilities. It serves as a portable CLI toolset designed to run across different operating systems and architectures. The implementation includes a WebAssembly shell environment, which allows these essential command line tools to be executed directly within a web browser without requiring a local installation. The toolset covers a broad range of system capabilities, including filesystem operations, text processing and stream editing, and system administration too
Cash is a JavaScript implementation of Unix shell utilities and command-line interfaces. It provides a collection of standard system-level text processing and file manipulation tools written in ES6 that run without native compilation or external dependencies. The project allows for the programmatic execution of shell operations using function calls and tagged templates. It implements a system for chaining multiple commands together to filter and transform data through programmatic pipelines, mimicking standard shell pipe behavior. These capabilities enable the execution of Unix-style command
Ungit is a web-based graphical interface and version control client for managing Git repositories. It provides a visual dashboard for performing version control operations, staging changes, and committing files without using a terminal. The project integrates third-party merge utilities to resolve file conflicts and includes a system for signing and verifying the authenticity of code contributions using PGP encryption keys. The interface maintains synchronization with the local filesystem by monitoring directory changes in real time to update the repository state. It interfaces with the unde
Capistrano is a Ruby-based release manager and remote server orchestrator. It uses SSH to push code updates and execute a standardized sequence of deployment tasks across a fleet of remote machines. The tool distinguishes itself through role-based server targeting and parallel connection pooling, allowing users to assign functional labels to servers and execute commands across multiple machines simultaneously. It manages multiple environments by applying a single deployment definition across different stages through parameter-based mapping. The system provides a framework for remote task exe
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
Azkaban is a distributed workflow manager and DAG-based job orchestrator designed as an enterprise batch processor. It serves as a Java-based workflow engine that schedules and executes complex job sequences across a cluster of executor servers, with specific functionality for managing big data workloads on Hadoop clusters. The system distinguishes itself through a distributed executor model that coordinates state via a shared database to ensure high availability. It employs a plugin-based architecture that allows for custom job types and system functionality extensions, including the ability
skhd is a hotkey daemon and keyboard remapper for macOS. It operates as a background service that maps custom keyboard shortcuts to shell commands, scripts, and system actions. The utility features application-aware shortcut management, allowing the same hotkey to execute different commands depending on which application is focused. It also includes an input mode manager to define distinct operational modes that change how keys behave based on the active state. The system supports contextual routing through application-specific shortcuts and event exclusions to preserve native app behavior.
Übersicht is a desktop widget engine for macOS that renders JavaScript-based widgets as live content directly on the desktop background. Widgets are authored using JSX syntax with inline CSS styling, enabling a React-like component model and automatic code reload without manual refreshing. The engine provides built-in bridges for executing arbitrary shell commands asynchronously, accessing device geographic location with street-level detail, and routing outbound HTTP requests through a local proxy to bypass cross-origin restrictions when fetching external data. Distinctively, widgets can be a
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
Claude Code is a command-line interface and multi-agent orchestration framework designed for autonomous software engineering. It enables AI agents to perform codebase modifications, debugging, and Git workflow management while coordinating multiple specialized agents to decompose and execute complex engineering tasks in parallel. The system distinguishes itself through a high degree of isolation and safety, utilizing Git worktrees to create independent working directories for concurrent agents and implementing a tiered permission system that combines user rules, project policies, and OS-level
Shuttle is a macOS menu bar application that serves as an SSH shortcut menu and terminal command orchestrator. It allows users to launch remote server connections and execute shell scripts through a persistent status bar interface. The utility parses system SSH configuration files to create a navigable menu of remote servers. It organizes these hosts into hierarchical nested menus using path-based identifiers to group servers and environments. The application manages terminal automation by dispatching shell commands to a preferred terminal emulator. It supports custom command definitions wit
Blink is a mobile terminal platform for iOS that combines an SSH and Mosh client with a local shell emulator, snippet manager, and SSH key storage. It renders terminal output using Chromium's HTerm engine for fast display and maintains persistent remote sessions across network changes through the Mosh protocol. The platform supports SSH key-based authentication, WebAuthn hardware security keys, and SOCKS5 proxy tunneling for secure remote access. The terminal environment is built around gesture-based session navigation, allowing users to switch between multiple shells with swipe and pinch ges
Ajenti is a Linux server management panel that provides a centralized web-based dashboard for administering system configurations, services, and hardware resources. It functions as a system monitor and a remote administration tool for managing server infrastructure through a browser. The project includes a web-based terminal emulator for executing shell commands and a file manager for browsing and organizing the server filesystem. It also features a dedicated manager for deploying and controlling the lifecycle of Docker containers. The platform covers a broad range of administrative capabili
toggleterm.nvim is a Lua-based terminal manager and session orchestrator for Neovim. It provides a system for opening, hiding, and organizing multiple persistent terminal windows, allowing shell sessions to be integrated directly within the text editor. The plugin distinguishes itself by offering a floating terminal interface and the ability to define custom terminal classes. These classes allow for specialized instances with dedicated commands and environment variables, while named terminal selection enables users to focus specific sessions using descriptive labels rather than numeric identi
This project is a Go shell scripting library and framework designed for writing automation scripts and CLI tools. It provides a concurrent data pipeline system for chaining sources, filters, and sinks to process text and JSON streams. The library distinguishes itself through a comprehensive toolkit for shell-like operations, including a text processing engine for regular expression filtering and frequency analysis, a filesystem utility toolkit for recursive search and path manipulation, and an integrated HTTP client wrapper for building data pipelines that fetch web content. The capability s
archinstall is a guided installer for the Arch Linux operating system. It provides a mechanism to automate the partitioning, package selection, and configuration of a system through an interactive menu interface or pre-defined configuration profiles. The tool supports both manual and automated deployment. It can function as an interactive installation guide or as an automated deployment utility that loads settings and credentials from external files to perform installations without manual intervention. The project includes capabilities for disk partition management to support single or dual
Albert is a keyboard launcher that opens files, applications, and runs commands by typing search queries into a search bar. It functions as a keyboard-driven workflow tool, enabling users to navigate their file system, launch installed applications, and execute shell commands without touching a mouse. The launcher processes user input through a plugin-based modular architecture, where functionality is extended by dynamically loaded C++ and Python plugins. Queries are dispatched to all enabled handlers in parallel, with results merged and ranked by a combination of match quality and historical
PEASS-ng is a Linux privilege escalation scanner and post-exploitation enumeration tool. It identifies security vulnerabilities and misconfigurations on Linux systems that could lead to unauthorized elevated access. The tool functions as a security audit utility that discovers system weaknesses and sensitive information after initial access is gained. It scans operating systems to identify specific privilege escalation paths. Findings are converted into structured security audit reports. The tool supports exporting scan results into JSON, HTML, and PDF formats for formal analysis and documen
This project provides secure, containerized infrastructure designed for autonomous agents, remote code execution, and cloud development. It functions as a sandboxed environment where AI agents and external processes can execute code, run shell commands, and manage files while remaining isolated from the host system. The system distinguishes itself by implementing the Model Context Protocol, allowing it to act as a standardized tool server that exposes browser and filesystem capabilities to compatible clients. It further integrates headless browser automation, enabling programmatic web navigat
Amber is a transpiler that translates high-level source code into executable shell scripts for Bash, Zsh, and Ksh. It provides a type-safe environment for shell script generation, allowing for static type validation and the creation of standalone executable scripts. The project distinguishes itself through a compilation process that includes tree-shaking import optimization to reduce output size and template-based script wrapping for custom headers and footers. It utilizes a module-based dependency resolution system with visibility controls to manage code reuse across multiple files. The lan
This project is a collection of technical resources, blueprints, and guides for building resilient and stealthy red team infrastructure. It provides a comprehensive framework for designing offensive security environments that resist detection and remain operational throughout security engagements. The repository distinguishes itself through detailed playbooks for adversary simulation and hardening manuals. It covers advanced obfuscation techniques such as domain fronting, the use of platform-as-a-service redirectors, and the leveraging of third-party content sites to inherit domain reputation
This is an open-source, crowd-sourced wiki textbook that teaches Linux system programming in C. It covers the core operating system concepts of process management through the fork-exec-wait model, dynamic memory allocation using implicit free list heap allocators, inode-based file systems, inter-process communication via pipes and shared memory, POSIX threads with synchronization primitives, signal-based asynchronous notification, virtual memory with page table translation, and runtime diagnostics using Valgrind and GDB. The textbook distinguishes itself by providing practical, implementation
Cakebrew is a graphical user interface for managing Homebrew packages and formulas on macOS. It provides a visual application for searching, installing, and updating software without requiring direct command line interaction. The tool includes capabilities for managing external software repositories and taps to expand the library of available packages. It also provides utilities for system storage optimization by cleaning up obsolete files and updating the package manager environment.
tplmap is a security tool designed for the detection and exploitation of server-side template injection vulnerabilities. It functions as an automated scanner to identify vulnerable template engine contexts and provides a framework for achieving remote code execution. The tool focuses on translating high-level requests into engine-specific syntax to execute operating system commands and bypass application sandboxes. It further enables remote file system access, allowing users to read, write, and transfer files between a local machine and a target server. Additional capabilities include the ab
libinput-gestures is a Linux input event daemon and touchpad gesture mapper that translates libinput events into shell commands or keyboard shortcuts. It functions as a background process that monitors raw input signals to automate workflows and execute system actions based on a user-defined configuration file. The tool allows for the mapping of multi-finger swipes and hold gestures to specific terminal commands or desktop workspace navigation. It differentiates between actions by filtering for finger counts, swipe directions, and the duration of hold gestures. The system integrates with sys