10 repositorios
Systems that decouple background task execution from main application threads.
Distinguishing note: Focuses on architectural decoupling of processes rather than general task scheduling.
Explore 10 awesome GitHub repositories matching software engineering & architecture · Asynchronous Process Managers. Refine with filters or upvote what's useful.
WindTerm is a cross-platform terminal emulator and integrated development environment designed for remote server management and system administration. It provides a centralized graphical interface for interacting with local and remote command-line environments, utilizing a low-level emulation engine to interpret ANSI escape sequences and render text streams. The application distinguishes itself through a multi-pane workspace that supports terminal session multiplexing, allowing users to organize multiple command windows and panes within a single interface. It features a modular architecture t
Decouples terminal session lifecycles from the main UI thread to prevent interface freezing.
LightTable is an extensible source code editor and integrated development environment designed as an interactive programming environment. It enables the evaluation of programming language fragments in real time to provide instant feedback on expressions. The workspace functions as a remote execution environment, connecting to and managing external servers to run code within remote processes. It allows for an interactive workflow where users can execute code fragments and track expression values without restarting the environment. The system provides source code editing capabilities, includin
Uses a message bus to decouple the user interface from background execution processes.
Syntastic is a syntax checking plugin for Vim that integrates external command line linting tools to identify and highlight code errors in real time. It functions as an external linter integrator and multi-language linter wrapper, allowing users to run automated code verification across various programming languages within the editor. The system is distinguished by its ability to chain multiple external syntax checkers for a single file type and merge their results into a single unified error collection. It provides an interface to manage these findings through the Vim location list, enabling
Implements a system to decouple background syntax checking from the main editor thread to ensure UI responsiveness.
JupyterHub is a multi-user platform for hosting and managing isolated Jupyter notebook server instances on a single system or cluster. It serves as a notebook server orchestrator that spawns and monitors individual computing environments on demand. The system uses a plugin-based spawner interface to launch these environments across diverse infrastructure, including local processes, containers, or cloud clusters. It integrates with external identity providers and supports pluggable authentication to verify user identities and secure access. The framework includes centralized administration to
Tracks and monitors the lifecycle of concurrent server processes using an asynchronous event loop.
Symfony Process is a PHP library for executing external commands in separate operating-system processes with full lifecycle control. It provides a cross-platform command executor that handles OS-specific argument escaping and process management, enabling portable subprocess execution from PHP applications. The library supports both synchronous and asynchronous process execution, allowing background subprocesses to run independently while the main PHP script continues. It includes executable path resolution to locate system commands across standard search directories, stream-based I/O pipes fo
Starts background subprocesses with timeout, signal, and streaming output support.
CliWrap es una biblioteca de gestión de procesos asíncronos y envoltorio de procesos hijos, utilizada para ejecutar comandos externos e integrar interfaces de línea de comandos en aplicaciones. Proporciona un framework para lanzar programas externos mediante patrones asíncronos, gestionar procesos hijos y validar códigos de salida. La biblioteca destaca por su capacidad para enrutar flujos de entrada, salida y error estándar hacia buffers de memoria o flujos de eventos en tiempo real. Permite el monitoreo en tiempo real de las líneas de salida del proceso y admite la terminación de procesos mediante tokens de cancelación. El proyecto cubre una amplia gama de capacidades de gestión de procesos externos, incluyendo la configuración de variables de entorno, la redirección de flujos estándar y la captura de la salida del proceso para su uso como datos dentro de una aplicación.
Manages external process execution using non-blocking async-await patterns to decouple background tasks from the main thread.
Este proyecto es un cliente de distribución de juegos para Linux, una tienda de juegos digitales y un runtime de juegos. Proporciona una interfaz de escritorio para descubrir, comprar, descargar y lanzar videojuegos digitales en sistemas operativos Linux. El software implementa una capa de traducción que convierte llamadas a la API de Windows en llamadas al sistema Linux para permitir la ejecución de binarios no nativos. Utiliza un entorno de ejecución basado en contenedores y espacios de nombres del kernel para garantizar la compatibilidad de binarios y dependencias en diversas distribuciones de Linux. El sistema incluye un gestor de pantalla que abstrae la interfaz entre las ventanas de los juegos y los entornos de escritorio X11 o Wayland. También gestiona el almacenamiento en caché de activos locales para metadatos y agrupa librerías compartidas para evitar conflictos de versiones con el sistema operativo anfitrión. La gestión de procesos se maneja mediante el monitoreo asíncrono de los ciclos de vida de los procesos hijos y los códigos de salida para el seguimiento de la ejecución y la notificación de errores.
Implements an asynchronous process management system to monitor child process lifecycles and handle crash reporting.
fzf-lua is a fuzzy finder integration for Neovim that utilizes fzf to search files, buffers, and project symbols. It serves as a code navigation framework providing a dynamic result generator that populates search windows using real-time shell commands or custom Lua functions. The project distinguishes itself through specialized integration tools for Git and Language Server Protocols. It includes a Git search interface for navigating commits, branches, stashes, and diffs, alongside an LSP integration tool that bridges language server providers to locate definitions and references across a cod
Executes heavy search operations in separate system processes to keep the Neovim editor thread responsive.
vim-lsp is a Vim plugin that implements the Language Server Protocol to provide an asynchronous code intelligence tool for the editor. It serves as a bridge between Vim and external language servers, providing semantic code analysis and IDE-like navigation and diagnostics. The project provides a refactoring interface for renaming symbols across a workspace and applying quick-fixes. It also enables semantic highlighting, which color-codes elements based on their meaning as determined by the language server. The plugin covers a broad surface of capabilities, including symbol navigation and dis
Manages external server processes asynchronously to ensure the editor remains responsive during code analysis.
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
Decouples the execution of verification tasks from the main UI thread using asynchronous process management.