27 repositorios
Adapters or configurations that allow libraries to interoperate with asynchronous event-driven runtimes.
Distinguishing note: Focuses on the integration layer with event loops, distinct from the database query logic itself.
Explore 27 awesome GitHub repositories matching development tools & productivity · Event Loop Integrations. Refine with filters or upvote what's useful.
RethinkDB is a distributed, document-oriented database designed to store and manage JSON-formatted data across scalable clusters. It utilizes a custom log-structured storage engine with B-Tree indexing to ensure high-performance disk I/O and data persistence. The system maintains high availability through automatic sharding and replication, employing a primary-replica voting consensus mechanism to handle node failures and ensure consistent cluster operations. A defining characteristic of the platform is its reactive changefeed engine, which allows applications to subscribe to live data update
RethinkDB integrates database operations with asynchronous event loops by configuring drivers to return future objects compatible with standard networking frameworks.
Sanic is a Python ASGI web framework and asynchronous HTTP server. It is designed to build high-performance web applications and servers that handle concurrent requests using non-blocking logic. The framework implements the Asynchronous Server Gateway Interface standard, allowing applications to be deployed across various ASGI-compatible servers. It utilizes an asyncio-based event loop and integrates a Cython-based runtime wrapper around libuv to manage I/O operations. The system manages traffic through route-based request dispatching and a middleware-based request pipeline. These components
Integrates uvloop as a high-performance replacement for the standard Python event loop.
This project provides a full Python interpreter compiled to WebAssembly, enabling the execution of Python code and scientific libraries directly within web browsers and server-side environments. By bridging the gap between language runtimes, it allows developers to run computational tasks, manage packages, and perform data analysis in client-side environments without requiring a backend server. The platform distinguishes itself through a comprehensive foreign function interface that enables bidirectional data exchange, object proxying, and function calling between Python and JavaScript. It in
Yields control to the browser event loop during long-running computations to maintain UI responsiveness.
CocoaAsyncSocket is a networking library for macOS and iOS that provides core components for managing asynchronous TCP and UDP streams. It implements non-blocking network communication to maintain application responsiveness during data transfers, featuring a delegate-based system for managing connection streams and packet handling. The library includes a secure communication layer that wraps TCP sockets to apply encryption standards, protecting client and server traffic from unauthorized interception. Its capabilities cover non-blocking connection management for both stream-based TCP and pac
Integrates socket file descriptors into the system event loop to trigger notifications without blocking.
uvloop is a high-performance replacement for the standard Python event loop. It functions as a drop-in substitute designed to accelerate asynchronous networking tasks and reduce latency in event-driven software systems. The project achieves its performance characteristics by utilizing a Cython-based extension module that wraps the libuv C library. By leveraging low-level system calls for event-driven input and output multiplexing, it manages concurrent network requests and subprocess execution with minimal overhead. The implementation supports scalable backend service development by handling
Functions as a high-performance, drop-in replacement for the standard Python event loop.
This project is a Vim plugin that functions as an AI-powered coding assistant. It integrates large language models directly into the text editor to provide real-time code suggestions and function completions based on the current file context and cursor position. The plugin distinguishes itself by utilizing an asynchronous event loop to maintain editor responsiveness while communicating with remote models. It employs a virtual buffer overlay to display generated code suggestions, allowing users to preview and accept proposed changes without modifying the underlying file until explicitly confir
Maintains editor responsiveness during network communication by utilizing an asynchronous event loop for non-blocking data retrieval.
Uvicorn is an ASGI web application host designed for asynchronous Python web development. It serves applications through a standardized asynchronous server gateway interface to handle non-blocking network traffic and high-concurrency requests. The server manages both HTTP and WebSocket traffic, including the handshaking process required to establish persistent, full-duplex communication channels for real-time data exchange. For development workflows, the project includes a hot-reload mechanism that monitors the filesystem for source code changes and automatically restarts the server process.
Provides a high-performance event loop replacement based on libuv to handle massive concurrency.
uWebSockets.js is a high-performance tool for building WebSocket and HTTP servers within Node.js. It focuses on high-throughput web servers and real-time data streaming, enabling the creation of network applications that handle a large number of concurrent connections with low memory and CPU overhead. The project distinguishes itself through a native C++ implementation that integrates directly with the Node.js event loop. It utilizes native-layer route matching and a shared memory architecture to minimize allocation overhead and avoid data duplication during message transmission. The impleme
Hooks native network polling mechanisms directly into the Node.js event loop for efficient asynchronous I/O.
Django Ninja is a high-performance framework for building type-safe REST APIs using Django. It functions as an OpenAPI API framework and a type-safe wrapper that utilizes Python type hints to handle request validation and response serialization. The project distinguishes itself by integrating Pydantic-based data modeling to convert JSON inputs into strongly typed Python objects. It automatically generates OpenAPI schemas and interactive documentation pages directly from defined endpoint signatures. The framework supports asynchronous request processing to handle concurrent tasks. It employs
Provides integration with asynchronous event loops to perform non-blocking I/O operations within the web server.
Japronto is an asynchronous web framework and Python HTTP server toolkit. It functions as a multi-worker HTTP server and request router, utilizing non-blocking asynchronous handlers to manage high concurrency and throughput. The project implements a master-multiworker forking model to distribute network traffic across multiple CPU cores. It incorporates a fast event loop and a specialized C-extension for high-speed HTTP request parsing, while supporting request pipelining over single TCP connections. The framework covers a broad range of request handling capabilities, including URL pattern r
Integrates uvloop as a high-performance replacement for the standard asyncio event loop.
This project is a PHP implementation of the Promises/A+ specification, providing a library for managing asynchronous operations and deferred values. It serves as an asynchronous task coordinator that allows for the creation of non-blocking code through a promise-based pattern. The library enables the simulation of asynchronous coroutines, allowing non-blocking code to be written in a linear style. It features duck-typed interoperability, which allows it to integrate with any foreign object that implements a then method regardless of class inheritance. The project covers broader capabilities
Implements a global queue for pending handlers to ensure compatibility with asynchronous event-driven runtimes in PHP.
Walk is a comprehensive framework for building native Windows desktop applications. It functions as a GUI library and Windows API wrapper, providing a toolkit of native widgets and a declarative layout system for developing high-performance user interfaces. The project is distinguished by its data-binding framework, which uses reflection and string-based property paths to synchronize data sources with interface widgets. It also provides specialized support for high-DPI interface scaling and an optimized native message loop to reduce runtime overhead. The toolkit covers a wide range of capabi
Includes a high-performance native message loop replacement to reduce runtime overhead and latency.
Skim is a cross-platform interactive fuzzy finder that runs as a terminal application, a Rust library, a Vim and Neovim plugin, and a shell integration tool. It provides real-time filtering and selection from lists of items, supporting keyboard and mouse navigation, live preview panes, and multi-select functionality across Linux, macOS, and Windows. The tool distinguishes itself through a composable query expression tree that supports fuzzy, exact, inverse, prefix, suffix, and logical AND/OR operators, combined with a Smith-Waterman scoring engine that penalizes typos and gaps for natural rel
Integrates the fuzzy finder's event loop with a Tokio runtime for asynchronous control.
ControlRoom es una aplicación de escritorio para macOS diseñada para gestionar el estado, el entorno y la apariencia visual del Simulador de Xcode. Sirve como un toolkit para el control del simulador, depuración visual, captura de pantalla y pruebas de entorno. El proyecto proporciona utilidades especializadas para activar enlaces profundos y enviar notificaciones push para verificar las respuestas de la aplicación. Incluye un depurador visual para extraer colores de pantallas simuladas y una herramienta de captura para grabar videos y tomar capturas de pantalla con superposiciones opcionales de bisel de hardware. La aplicación cubre una amplia gama de capacidades de simulación, incluyendo la modificación de fechas del sistema, estados de red, ubicaciones GPS y ajustes de apariencia de accesibilidad. También gestiona el ciclo de vida del simulador, permitiendo la instalación y eliminación de software y el ajuste de modos claro y oscuro o idiomas del sistema.
Integrates the application's logic with the native macOS event loop to manage asynchronous simulation processes.
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,
Switches between select, poll, epoll, kqueue, and IOCP event loops transparently.
pywin32 es una colección de extensiones de Python que sirven como envoltorio para la API nativa de Windows, permitiendo la invocación de funciones del sistema operativo para gestionar recursos del sistema de bajo nivel y hardware. Proporciona una librería central para interactuar con objetos del Modelo de Objetos de Componentes (COM) para automatizar aplicaciones de escritorio nativas, un framework para construir aplicaciones GUI nativas de Windows y una interfaz para registrar y ejecutar scripts de Python como servicios de sistema en segundo plano. El proyecto se distingue por proporcionar una integración profunda con el entorno de Windows, incluyendo la capacidad de vincular código Python al bucle de eventos nativo para manejar notificaciones del sistema y la capacidad de exponer lógica interna como extensiones ISAPI para manejar solicitudes web. Las capacidades más amplias de la librería cubren la conectividad de bases de datos a través de interfaces de proveedores de datos de Windows estandarizadas, la gestión de registros de eventos del sistema y la integración de entornos interpretados interactivos en software externo. El proyecto se distribuye como ruedas binarias específicas de la plataforma para múltiples arquitecturas de procesador, incluyendo ARM64.
Binds Python code to the native Windows message pump to handle GUI events and system notifications.
Toga es un framework de aplicaciones multiplataforma y kit de herramientas GUI nativo para Python. Sirve como un wrapper de frontend multiplataforma que permite que una sola base de código se despliegue en macOS, Windows, Linux, Android e iOS. El kit de herramientas funciona como una biblioteca de UI de widgets nativos, mapeando definiciones de interfaz de Python de alto nivel directamente a los componentes visuales del sistema operativo anfitrión. Esto asegura que las aplicaciones utilicen widgets nativos del sistema para coincidir con la apariencia del entorno de destino en lugar de depender de bibliotecas de dibujo personalizadas. El framework cubre el desarrollo multiplataforma para aplicaciones de escritorio y móviles, con soporte adicional para el despliegue en navegadores web y terminales de línea de comandos.
Binds the Python runtime to the native operating system event loop for asynchronous user input and window updates.
libwebsockets es un framework de red basado en eventos escrito en C. Proporciona un conjunto de herramientas para implementar servidores y clientes HTTP, comunicación bidireccional mediante WebSocket, mensajería de cliente MQTT y cifrado de sockets con TLS. El proyecto se distingue por una arquitectura de bucle de eventos (event-loop) no bloqueante, capaz de escalar a altos volúmenes de conexiones distribuyendo las sesiones de red entre múltiples hilos de servicio. Utiliza un sistema de callbacks basado en protocolos y una integración de bucle de eventos conectable que permite al núcleo de red sincronizarse con bibliotecas de eventos del sistema externo. El framework cubre una amplia gama de capacidades de comunicación, incluyendo cifrado en la capa de transporte para tráfico de red seguro y proxy de conexiones para permitir que dispositivos offline se comuniquen a través de proxies remotos. También incluye una política de conexión abstracta que desacopla la lógica de la aplicación de los endpoints de red mediante archivos de configuración.
Allows the networking core to synchronize with external system event libraries via pluggable integration.
RxPY es una librería de programación reactiva funcional y una librería de observables ReactiveX para Python. Funciona como un procesador de flujos asíncronos y un framework de coordinación basado en eventos, utilizado para construir pipelines de datos que reaccionan a cambios de estado o flujos de eventos a lo largo del tiempo. La librería proporciona un kit de herramientas para componer programas asíncronos y basados en eventos mediante secuencias observables y operadores. Se distingue por el uso de planificadores (schedulers) configurables para gestionar la concurrencia, el timing y los ciclos de vida de las suscripciones. El proyecto cubre una amplia gama de capacidades de procesamiento de flujos, incluyendo agregación, filtrado y combinación de datos. Proporciona mecanismos para la difusión de eventos, almacenamiento en búfer de secuencias y gestión de errores, así como herramientas para coordinar flujos observables con bucles de eventos asíncronos. Las pruebas y el aseguramiento de la calidad se apoyan en la simulación de tiempo virtual, el modelado con diagramas de mármol y la verificación de emisiones.
Offers adapters and configurations to interoperate observable streams with asynchronous event-driven runtimes.
pyzmq proporciona bindings del lenguaje Python para ZeroMQ, sirviendo como una biblioteca de mensajería asíncrona para el transporte de datos distribuido y la comunicación entre procesos. Permite la implementación de patrones de comunicación no bloqueantes entre componentes distribuidos y procesos locales. El toolkit se centra en el intercambio de datos de alto rendimiento a través de características como el acceso a búfer zero-copy, que lee los mensajes entrantes directamente en memoria preasignada para evitar la duplicación de datos. También admite la gestión de mensajes multipart y el uso de wrappers de objetos de sombreado de estado para rastrear los ciclos de vida de los sockets. La biblioteca cubre una amplia gama de capacidades de comunicación, incluyendo el enrutamiento de tráfico de red a través de proxies, autenticación segura de pares y controles de suscripción de sockets. Se integra con runtimes asíncronos para proporcionar operaciones de socket no bloqueantes y procesamiento de streams en segundo plano. Las extensiones binarias son compatibles a través de múltiples arquitecturas de hardware mediante compilación multiplataforma.
Integrates ZeroMQ socket polling mechanisms with Python asynchronous event loops like asyncio.