awesome-repositories.com
Blog
MCP
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetServeur MCPÀ proposNotre méthodologiePresse
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

19 dépôts

Awesome GitHub RepositoriesEvent Loops

Systems that monitor file descriptors and asynchronous events to coordinate real-time input and output.

Distinguishing note: None of the candidates were relevant; this is a low-level system architecture component.

Explore 19 awesome GitHub repositories matching operating systems & systems programming · Event Loops. Refine with filters or upvote what's useful.

Awesome Event Loops GitHub Repositories

Trouvez les meilleurs dépôts grâce à l'IA.Nous recherchons les dépôts les plus pertinents grâce à l'IA.
  • tmux/tmuxAvatar de tmux

    tmux/tmux

    46,643Voir sur GitHub↗

    This project is a terminal multiplexer that enables multiple terminal sessions to run simultaneously within a single window or a detached background process. By decoupling the client interface from a persistent server process, it allows users to maintain long-running command-line tasks that continue to execute even after disconnecting from a remote host. The system functions as a terminal window manager and process controller, providing a text-based interface to organize multiple shell processes into custom tiled layouts. It distinguishes itself through a programmable command-line interface t

    Coordinates real-time updates across active sessions by monitoring file descriptors for input and output.

    C
    Voir sur GitHub↗46,643
  • alex/what-happens-whenAvatar de alex

    alex/what-happens-when

    43,189Voir sur GitHub↗

    This project is a collaborative knowledge base and technical learning resource that provides a detailed breakdown of the internal processes occurring within modern computing environments. It serves as a comprehensive educational reference, tracing the step-by-step operations triggered by common user interactions and network requests to explain how hardware and software components interact across the entire stack. The guide distinguishes itself by offering deep technical insights into the journey from physical input to visual output. It covers the low-level mechanics of hardware interrupt hand

    Explains how operating systems route input events to applications.

    Voir sur GitHub↗43,189
  • sxyazi/yaziAvatar de sxyazi

    sxyazi/yazi

    39,458Voir sur GitHub↗

    Yazi is a high-performance terminal file manager designed for keyboard-driven navigation and organization of local file systems. Built as an asynchronous application, it utilizes a non-blocking runtime to execute concurrent file operations and interface updates, ensuring the user experience remains responsive even during intensive tasks. The interface is rendered directly into the terminal emulator using escape sequences to maintain minimal memory overhead. The application distinguishes itself through a modular architecture that supports custom functionality via an embedded scripting engine.

    Implements a non-blocking event loop to handle concurrent file and network operations efficiently.

    Rustandroidasynciocli
    Voir sur GitHub↗39,458
  • nginx/nginxAvatar de nginx

    nginx/nginx

    30,903Voir sur GitHub↗

    Nginx is a high-performance HTTP server and reverse proxy designed to handle high-concurrency traffic through an efficient, event-driven architecture. It functions as a versatile traffic management gateway and content delivery accelerator, providing the infrastructure necessary to route client requests, balance loads across backend servers, and serve static assets with minimal resource consumption. The project distinguishes itself through a master-worker process model that separates configuration management from request processing, ensuring stable operations under heavy load. Its modular requ

    Manages network I/O and system events through a continuous loop to maintain high-concurrency responsiveness.

    Ccontent-cachehttphttp2
    Voir sur GitHub↗30,903
  • fyne-io/fyneAvatar de fyne-io

    fyne-io/fyne

    27,941Voir sur GitHub↗

    Fyne is a cross-platform graphical user interface toolkit for the Go programming language. It provides a comprehensive framework for building native applications that run on desktop, mobile, and web environments from a single codebase. The toolkit centers on a canvas-based rendering engine and a device-independent layout engine, ensuring that visual elements maintain consistent dimensions and behavior across diverse operating systems and screen densities. The project distinguishes itself through a reactive data-binding system that automatically synchronizes application state with interface co

    Starts a persistent event loop process to maintain graphical interface responsiveness and handle user interactions.

    Goandroidcross-platformfyne
    Voir sur GitHub↗27,941
  • niri-wm/niriAvatar de niri-wm

    niri-wm/niri

    20,069Voir sur GitHub↗

    Niri is a Wayland compositor and tiling window manager designed for Linux systems. It functions as a display server that organizes application windows into a scrollable, column-based layout, providing a structured environment for managing graphical sessions, input routing, and hardware output. The project distinguishes itself through a declarative configuration engine that enables live-reloading of settings, allowing users to modify window rules, input bindings, and visual appearance without restarting the session. It features a physics-based animation system that uses spring-based curves to

    Freezes the current timestamp for the duration of an event loop iteration to ensure consistent state calculations.

    Rustrustsmithaytiling-window-manager
    Voir sur GitHub↗20,069
  • ratatui/ratatuiAvatar de ratatui

    ratatui/ratatui

    18,525Voir sur GitHub↗

    Ratatui is a Rust framework for building interactive, stateful terminal user interfaces. It provides a modular architecture that maps application data to visual components, enabling the creation of complex, text-based applications that run directly in the terminal. The library distinguishes itself through an immediate-mode rendering system that utilizes double-buffering to minimize flickering and reduce communication overhead. It employs a constraint-based layout engine to partition screen space into nested segments, allowing for the construction of sophisticated visual hierarchies that remai

    Maintains a continuous execution loop that processes user input and periodic ticks to update application state and refresh the display.

    Rustcliratatuirust
    Voir sur GitHub↗18,525
  • wkentaro/labelmeAvatar de wkentaro

    wkentaro/labelme

    15,984Voir sur GitHub↗

    Labelme est un outil d'annotation d'images basé sur Python utilisé pour créer des jeux de données de vision par ordinateur. Il sert d'éditeur visuel pour la segmentation sémantique, permettant aux utilisateurs de définir les limites des objets en utilisant des polygones, des rectangles, des points et des cercles. L'application fonctionne également comme un annotateur d'images multispectrales, prenant en charge les fichiers TIFF à haute profondeur de bits utilisés dans l'imagerie satellite et scientifique. L'outil intègre des capacités d'étiquetage assisté par IA pour automatiser la création de masques et de polygones. Ces fonctionnalités permettent la génération de formes pilotée par des invites textuelles ou des sélections de points interactives, qui proposent des limites basées sur des points positifs et négatifs placés par l'utilisateur. Le logiciel couvre un large éventail de tâches de gestion et d'annotation de données, y compris la création de masques de pixels denses, de boîtes englobantes pivotées et de séquençage d'images vidéo. Il inclut un pipeline pour traduire la persistance d'état JSON interne en formats de jeu de données standard tels que COCO et Pascal VOC. Les capacités supplémentaires incluent des indicateurs de classification au niveau de l'image, des outils de raffinement de géométrie et l'importation d'images par lots.

    Utilizes a PyQt-based event loop to manage the graphical user interface and user interactions.

    Python
    Voir sur GitHub↗15,984
  • andlabs/libuiAvatar de andlabs

    andlabs/libui

    10,882Voir sur GitHub↗

    libui is a native C GUI library and cross-platform framework used to build desktop applications. It provides a unified C abstraction layer and a native widget toolkit that maps directly to the host operating system's original controls, windows, and menu bars. The project functions as a portable UI wrapper, employing platform-specific backends and a native-API wrapper to maintain visual and behavioral fidelity across different operating systems. It utilizes a C-language binding layer to ensure portability across various compilers and targets. The library covers native interface construction a

    Provides manual control over the main event loop to synchronize background processing with interface updates.

    C
    Voir sur GitHub↗10,882
  • max-mapper/art-of-nodeAvatar de max-mapper

    max-mapper/art-of-node

    9,873Voir sur GitHub↗

    This project is a curated educational guide and instructional resource for the Node.js runtime environment. It serves as a comprehensive introduction to core concepts, including asynchronous programming tutorials, network application primers, and guides on the module system and stream API. The material focuses on the fundamental building blocks of server-side development, specifically how to create reusable code packages and manage project dependencies via a module manifest. It provides detailed instruction on building programs that communicate over HTTP and TCP protocols to exchange data acr

    Covers the fundamental event-loop architecture used to coordinate non-blocking input and output.

    JavaScript
    Voir sur GitHub↗9,873
  • guard/guardAvatar de guard

    guard/guard

    6,685Voir sur GitHub↗

    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

    Provides the core file-system monitoring loop that drives all automated reactions.

    Ruby
    Voir sur GitHub↗6,685
  • tidwall/evioAvatar de tidwall

    tidwall/evio

    6,034Voir sur GitHub↗

    Evio est une bibliothèque réseau haute performance pour Go qui fournit un framework de socket non bloquant. Il utilise une boucle d'événements pour traiter le trafic de sockets TCP, UDP et de domaine Unix via une interface de protocole asynchrone de bas niveau. Le projet fonctionne comme un équilibreur de charge réseau multi-cœur, distribuant les connexions sur plusieurs cœurs CPU en utilisant des stratégies round-robin ou de moindre connexion. Il prend en charge la réutilisation de socket, permettant à plusieurs sockets sur un seul hôte de se lier au même port. La bibliothèque couvre un large éventail de capacités de gestion de socket et de traitement de paquets, incluant l'écoute multi-protocole sur un seul port et le service multi-interface. La performance est optimisée par l'allocation de paquets à tampon partagé et un cycle de vie de connexion piloté par rappel pour minimiser la surcharge mémoire et la latence. Le système inclut également des utilitaires pour la planification de tâches périodiques afin de déclencher des événements d'arrière-plan récurrents ou des battements de cœur système.

    Distributes network processing across multiple event loops to maximize throughput on multi-core systems.

    Gonetworking
    Voir sur GitHub↗6,034
  • rust-windowing/winitAvatar de rust-windowing

    rust-windowing/winit

    6,024Voir sur GitHub↗

    Window handling library in pure Rust

    Runs the platform-specific main loop that polls for system events and dispatches them to user callbacks.

    Rustandroidguiios
    Voir sur GitHub↗6,024
  • twisted/twistedAvatar de twisted

    twisted/twisted

    5,969Voir sur GitHub↗

    Twisted is an event-driven networking engine for Python that provides a framework for building asynchronous network applications. At its core, it uses a reactor-based event loop to drive all input and output, dispatching callbacks in a single thread without blocking. The library implements a deferred promise chain for composing asynchronous logic, along with a protocol and factory pattern that separates connection state management from protocol handling, enabling reusable handlers for different network protocols. The framework supports multiple event loops across platforms, including select,

    Runs network code on select, poll, epoll, kqueue, IOCP, or GUI event loops for cross-platform compatibility.

    Pythonasyncasync-pythondns
    Voir sur GitHub↗5,969
  • cloudwego/netpollAvatar de cloudwego

    cloudwego/netpoll

    4,583Voir sur GitHub↗

    Netpoll est un framework réseau piloté par les événements et une bibliothèque d'E/S non bloquantes conçue pour gérer les connexions TCP et Unix domain socket concurrentes. Il utilise une boucle d'événements non bloquante pour surveiller les descripteurs de fichiers et déclencher des callbacks pour les événements de lecture et d'écriture, servant de gestionnaire de socket haute performance et de poller réseau TCP. Le framework optimise le débit à travers les cœurs CPU en distribuant les connexions réseau entrantes à travers plusieurs pollers. Il implémente des primitives réseau zéro-copie, utilisant des tampons liés et une gestion mémoire spécialisée pour lire et écrire des données tout en minimisant les allocations mémoire et la duplication de données. La bibliothèque fournit une suite complète de capacités pour la gestion du cycle de vie des connexions, incluant la numérotation sortante, la configuration keepalive et les contrôles de délai d'expiration basés sur les échéances. Elle optimise davantage les performances via la mise en cache des objets de connexion, les opérations d'E/S vectorisées et les stratégies d'équilibrage de charge pour distribuer le trafic à travers les boucles d'événements. Le projet inclut des utilitaires pour gérer le déploiement de serveur, tels que des mécanismes pour un arrêt gracieux en détachant les écouteurs et en attendant l'achèvement des connexions actives.

    Distributes incoming network connections across multiple event loops to maximize CPU utilization and throughput.

    Go
    Voir sur GitHub↗4,583
  • opentrack/opentrackAvatar de opentrack

    opentrack/opentrack

    4,626Voir sur GitHub↗

    opentrack is head tracking software for simulators that measures a user's head orientation using cameras, sensors, or a smartphone's gyroscope and sends the data to flight simulators and games for immersive view control. It detects printed fiducial markers from a webcam feed to compute head rotation angles with sub‑degree accuracy, and it can also stream orientation data from a phone's IMU over a local network, replacing dedicated hardware. A plugin‑based pipeline architecture drives the tracking process through a configurable chain of input, filter, and output modules connected by a shared da

    Drives the tracking pipeline with a high-frequency lock-free event loop to maintain low-latency updates.

    C++c-plus-plusc-plus-plus-17flight-simulator
    Voir sur GitHub↗4,626
  • spulec/freezegunAvatar de spulec

    spulec/freezegun

    4,517Voir sur GitHub↗

    Freezegun is a Python time mocking library and system clock emulator used to freeze the system clock to a fixed date and time. It serves as a testing utility to ensure that time-dependent logic produces consistent and predictable results during software verification. The library provides an asyncio compatible mock that preserves real monotonic clock values to prevent event loops from hanging while other system time functions remain frozen. It supports simulating the passage of time through manual clock advancement, jumping to designated dates, or using a ticking clock simulation that incremen

    Maintains the real monotonic clock for asyncio event loops while keeping other system time functions frozen.

    Python
    Voir sur GitHub↗4,517
  • abhinavsingh/proxy.pyAvatar de abhinavsingh

    abhinavsingh/proxy.py

    3,533Voir sur GitHub↗

    proxy.py is a lightweight, dependency-free HTTP and reverse proxy framework built in Python that handles network traffic through asynchronous event loops and multi-core connection distribution. It acts as a customizable proxy server and embedded web server, allowing developers to inspect, route, and modify web traffic programmatically or via command-line execution wrappers. The platform provides in-flight TLS interception and traffic decryption using generated root certificates, alongside modular extension hooks that support custom dashboard interfaces, request handling plugins, and REST API

    Distributes connection handling across all available processing cores on the system to maximize overall throughput and concurrency.

    Pythondns-over-httpsgfwhttp-proxy
    Voir sur GitHub↗3,533
  • danog/madelineprotoAvatar de danog

    danog/MadelineProto

    3,344Voir sur GitHub↗

    MadelineProto is an asynchronous PHP library that provides a programmatic interface for interacting with the Telegram API using the MTProto protocol, the same protocol used by official Telegram clients. It functions as both a Telegram bot SDK and a userbot automation library, enabling PHP applications to connect to Telegram as either a bot account or a regular user account, sending and receiving messages, media, and other data directly without relying on the Bot API intermediary. The library is built on an event-driven architecture with Amp v3 fiber-based concurrency, allowing for non-blockin

    Provides the entry point for running a Telegram client's event loop with error handling and restart logic.

    PHPamphpasyncbot
    Voir sur GitHub↗3,344
  1. Home
  2. Operating Systems & Systems Programming
  3. Kernel and Core Internals
  4. Event Loops

Explorer les sous-tags

  • ApplicationContinuous execution loops that coordinate input processing, state updates, and display refreshes. **Distinct from Event Loops:** Distinct from low-level kernel event loops: focuses on application-level UI refresh cycles.
  • Event Loop Initializers3 sous-tagsFunctions or processes that start the main event loop for graphical interface responsiveness. **Distinct from Event Loops:** Focuses on the initialization of the event loop for GUI frameworks, distinct from low-level kernel event monitoring.
  • Event Loop Time Standardization1 sous-tagFreezes timestamps for the duration of an event loop iteration to ensure consistent state calculations. **Distinct from Event Loops:** Focuses on timestamp consistency within the event loop rather than general event monitoring.
  • File System WatchersEvent loops that monitor filesystem changes and dispatch events to registered handlers. **Distinct from Event Loops:** Distinct from general Event Loops: specifically monitors filesystem changes rather than generic I/O or UI events.
  • Lock-FreeEvent loops that use lock-free synchronization to maintain low-latency updates in real-time systems. **Distinct from Event Loops:** Distinct from Event Loops: specifically uses lock-free techniques for real-time performance, not general event monitoring.
  • Multi-Core ScalingDistribution mechanisms that spread network processing across multiple event loops to maximize CPU utilization. **Distinct from Multi-Core Workload Distribution:** Distinct from Event Loops: focuses specifically on the multi-core distribution strategy rather than the basic event monitoring mechanism.