36 مستودعات
Architectural patterns and libraries for enabling decoupled communication between software components.
Distinguishing note: Focuses on architectural decoupling patterns rather than specific networking or UI event handling.
Explore 36 awesome GitHub repositories matching software engineering & architecture · Message Bus Systems. Refine with filters or upvote what's useful.
Guava is a Java standard library extension and utility toolkit that provides optimized data structures, concurrency tools, and core extensions. It serves as a comprehensive set of helpers for Java development, focusing on reducing repetitive boilerplate logic. The project is distinguished by its specialized implementations of immutable collections, which ensure thread safety and data consistency by preventing accidental modification. It also includes a dedicated graph data structure library for modeling and traversing networks of interconnected nodes and edges, alongside advanced collection t
Facilitates communication between decoupled components using an event bus for publishing and subscribing to messages.
Textual is a Python TUI framework and asynchronous UI library used to build interactive text user interfaces. It provides a component-based architecture for creating cross-platform applications that run in both terminal and web browser environments. The framework distinguishes itself by utilizing a CSS-based layout engine to apply visual styles to widgets and a command palette interface for discovering and executing application functions. It also supports hosting terminal-based interfaces on the web to enable remote access via a standard browser. The toolkit covers a broad range of capabilit
Routes system logs and debug output to a separate terminal instance via a decoupled communication channel.
DevToys is a cross-platform desktop application that functions as a comprehensive suite of offline utilities for common software development tasks. It provides a unified interface for performing data formatting, encoding, validation, and asset generation locally without requiring an internet connection. The application is built on a plugin-based extensibility framework that allows users to integrate custom utility modules to meet specific technical requirements. A core differentiator is its clipboard-aware management system, which monitors clipboard content to automatically suggest or open th
Coordinates application tasks by enabling decoupled communication between components via a centralized event bus.
This project is a desktop screen capture and annotation utility designed for Linux environments. It provides an interactive graphical overlay that allows users to select specific screen regions, apply visual annotations such as shapes, text, and pixelation, and manage the resulting images through a configurable post-capture pipeline. The application distinguishes itself through deep system integration and automation capabilities. It operates as a persistent background daemon that monitors global hotkeys and supports inter-process communication via a system message bus, enabling users to trigg
Acts as a background service that uses the system message bus for programmatic control.
EventBus is a publish-subscribe messaging library designed to facilitate decoupled communication between components in Java applications. It functions as a central hub where producers dispatch events that are routed to subscribers based on the class type of the payload. By using annotation-based markers, the system maps event handlers to specific data types, allowing different parts of an application to exchange information without requiring direct references between classes. The library distinguishes itself through a focus on performance and execution control. It utilizes a compile-time inde
Enabling different parts of an application to exchange information without requiring direct references or tight coupling between classes.
AionUi is an AI agent orchestration platform designed to manage and coordinate multiple autonomous assistants within a local environment. It functions as a framework for executing background processes and scheduled tasks that operate independently of the user interface, ensuring that automated workflows continue to run without manual oversight. The platform distinguishes itself through a local-first approach to document generation and file manipulation, allowing users to create and modify office files directly on their hardware to maintain data privacy. It supports parallel agent execution, e
Enables remote management of desktop tasks by routing external messages to local agent processes via system message bus services.
Cockpit is a web-based management interface designed for the administration of Linux servers. It provides a graphical environment that allows users to perform system tasks, configure server settings, and monitor performance directly through a standard browser. The platform distinguishes itself by offering centralized control over distributed environments, enabling the management of multiple servers from a single dashboard. It supports the lifecycle management of containerized workloads and virtual machine infrastructure, alongside the configuration of network interfaces, firewalls, and storag
Communicates with system services by routing messages through the standard Linux D-Bus inter-process communication protocol.
Plasmo is a browser extension framework and build tool designed for developing cross-browser extensions from a single codebase. It functions as a development environment that automates manifest generation and bundles source code into compatible packages for multiple web browser engines. The project includes a developer toolset featuring hot module replacement for real-time code updates and an automated publisher to deliver completed builds to various browser web stores. Its capability surface covers extension UI development through the injection of components into web pages and a communicati
Implements a structured communication layer for exchanging data between background workers, popups, and content scripts.
Eww is a declarative framework for creating custom graphical desktop widgets and status bars on Linux. It functions as a desktop widget toolkit that operates independently of the window manager, allowing users to define interface elements through a dedicated configuration language and style them using a cascading stylesheet system. The project utilizes a client-server daemon architecture to manage the lifecycle of these components, ensuring that state is maintained across the desktop environment. By leveraging a reactive state binding system, the interface updates automatically in response to
Implements a message bus system to decouple interface updates from external system events.
This project is a futures algorithmic trading system designed to execute high-performance trading strategies through direct API integrations and low-latency message routing. It features a strategy execution engine that automates order placement and manages trade flows based on predefined logic and API triggers. The system utilizes a native trading API bridge and a low-latency message bus to interface internal logic with external exchange APIs while minimizing execution delays. Monitoring is handled through a web-based trading dashboard for real-time activity tracking and remote management. B
Employs a native message bus system to ensure decoupled, low-latency communication between trading system modules.
Flower is a federated learning framework and distributed machine learning orchestrator designed to train models across decentralized devices. It functions as a privacy-preserving toolkit that enables model training and data analysis on local hardware, ensuring raw data remains on the device while contributing to a synchronized global model. The system employs an agnostic wrapper and integrator to connect diverse machine learning libraries, allowing different frameworks to operate within the same training loop. It uses a remote procedure call orchestrator to manage the exchange of model weight
Provides a custom message bus to transmit non-standard data packets for specialized federated learning workflows.
VimR is a native macOS graphical user interface for the Neovim editor. It wraps the Neovim binary within a Swift and AppKit application to provide system-level window management and OS integration. The application includes a project workspace manager for organizing files and windows into distinct contexts, a graphical file browser for navigating directory structures, and a fuzzy file searcher for locating files using approximate string matching. It also features a markdown and HTML previewer with synchronized side-by-side scrolling.
Implements a message bus system to enable decoupled asynchronous communication between the Swift GUI and the Neovim process.
x11docker is an OCI container GUI orchestrator and hardware bridge designed to execute graphical applications and full desktop environments inside containers. It functions as a Linux GUI sandbox, linking containerized processes to host X11 or Wayland display servers and audio systems. The project differentiates itself by providing deep system integration for hardware acceleration, including NVIDIA driver automation and GPU passthrough. It supports cross-architecture GUI emulation and provides remote access capabilities through VNC, SSH forwarding, and browser-based HTML5 rendering. The tool
Provides bridging to the host system bus or initiates a private session for containerized desktop applications.
ethminer هو أداة تعدين Ethereum باستخدام GPU وخوارزمية Ethash. يعمل كعميل CUDA و OpenCL يستخدم بطاقات الرسوميات لإجراء حسابات إثبات العمل (proof-of-work) للتحقق من معاملات البلوكشين وتعدين عملات Ethereum. يستفيد البرنامج من تسريع GPGPU لتفريغ الحسابات الرياضية المتوازية إلى GPU، ويولد مجموعة بيانات الرسم البياني غير الدوري المطلوبة مباشرة في ذاكرة الفيديو للقضاء على زمن انتقال القرص. يتضمن أداة قياس أداء تعدين GPU لاختبار سرعة التجزئة والكفاءة مقابل عصور محددة لتحديد خطوط أساس للأداء. يطبق المشروع بروتوكول شبكة Stratum لتنسيق توزيع العمل وإرسال المشاركات إلى مجمعات التعدين البعيدة، مع ميزات الكشف التلقائي عن البروتوكول والاتصالات المشفرة. كما يوفر واجهة HTTP برمجية للإدارة عن بعد، مما يسمح للمستخدمين بمراقبة مقاييس الأداء في الوقت الفعلي والتحكم في عمليات التعدين. تتم إدارة تكامل النظام عبر ناقل رسائل لتنسيق العمليات وإشعارات على مستوى النظام.
Uses the D-Bus system message bus to handle inter-process communication and trigger operating system notifications.
Piper هو تطبيق سطح مكتب GTK وواجهة عميل مصممة لإدارة إعدادات أجهزة الألعاب الطرفية. يعمل كأداة مرئية لتكوين الفئران ولوحات المفاتيح من خلال التواصل مع daemon الخلفية libratbag. يوفر التطبيق واجهة رسومية لضبط الإعدادات على مستوى الأجهزة دون استخدام برامج البائعين المملوكة. يتضمن ذلك واجهة مستخدم تكوين مخصصة لفئران الألعاب لإدارة DPI ومعلمات أخرى خاصة بالجهاز. تغطي الأداة العديد من مجالات تخصيص الأجهزة، بما في ذلك أنماط إضاءة RGB، وإعادة تعيين أزرار الماوس، وضبط حساسية المؤشر ودقته. يقوم بمزامنة هذه الإعدادات بين الواجهة الأمامية المرئية وخدمة الخلفية لضمان اتساق حالة الأجهزة.
Uses the D-Bus system message bus to send commands and receive state updates from the libratbag service.
kcat هو عميل واجهة سطر أوامر لـ Apache Kafka يُستخدم لإنتاج واستهلاك وتصحيح أخطاء الرسائل باستخدام بروتوكول الأسلاك الأصلي. يوفر مجموعة من الأدوات للتفاعل مع مجموعات Kafka، بما في ذلك مصحح بروتوكول لفحص بيانات تعريف المجموعة ومدير معاملات للتعامل مع دفعات الرسائل الذرية. يتميز المشروع بفك تشفير مخطط Avro متخصص يحول الرسائل المشفرة ثنائياً إلى JSON مقروء للبشر من خلال التكامل مع سجلات المخططات البعيدة أو الملفات المحلية. بالإضافة إلى ذلك، يتضمن محاكياً في الذاكرة يسمح باختبار منطق المنتج والمستهلك عن طريق محاكاة سلوك الوسيط المؤقت دون الحاجة إلى بنية تحتية خارجية. تغطي مجموعة الأدوات مجموعة واسعة من عمليات المراسلة، بما في ذلك دعم مجموعة المستهلكين المتوازنة، والبحث عن الإزاحة القائم على الطابع الزمني، وبث البيانات المعاملاتية من الإدخال القياسي. كما يوفر أدوات مساعدة لتكوين أمان الاتصال وفحص بيانات تعريف المجموعة.
Includes a protocol debugger for inspecting cluster metadata, partition details, and real-time message flow.
CRI-O is an open-source container runtime that implements the Kubernetes Container Runtime Interface (CRI) to manage container images, pods, and containers on cluster nodes using OCI-compatible runtimes. It serves as a node-level container manager that handles image pulling, container lifecycle, and resource monitoring for Kubernetes clusters, running containers according to the Open Container Initiative specifications. The runtime distinguishes itself through live configuration reloading that applies changes to runtime definitions, registry mirrors, and TLS certificates without restarting th
Reuses and reattempts D-Bus connections on temporary failure to maintain reliable communication.
Cinnamon is a desktop environment interface for Linux operating systems. It provides a visual layout and user interface for managing windows and applications, focusing on desktop workflow management. The project enables Linux GUI customization, allowing the look and feel of the environment to be modified. It includes a window management system to handle the placement and behavior of application windows within the workspace. The environment utilizes a JavaScript-based shell and a modular applet architecture for extensibility, while using CSS for component styling. The interface is built with
Utilizes the D-Bus system message bus to synchronize state and trigger actions between the shell and system services.
Messenger is an asynchronous messaging system and event-driven communication layer designed to exchange events between decoupled components. It functions as an inter-process communication tool that removes direct dependencies between services by routing messages through a middleware layer. The system implements a pub-sub messaging model where components subscribe to specific event types and receive notifications when those events are triggered. It utilizes a central dispatcher to route asynchronous events from producers to registered subscribers. The project provides capabilities for distrib
Provides an architectural framework for decoupled communication between software components using an asynchronous message bus.
signal-cli is a command line interface for the Signal messenger protocol. It functions as a headless client that allows users to send and receive messages, manage accounts, and verify phone numbers within a terminal environment instead of a graphical application. The project provides integration capabilities for external programs through a JSON-RPC server and a D-Bus interface. These allow for automated messaging workflows and the ability to trigger messaging actions from other software services via a background daemon. The software covers account identity management, including registration
Exposes messaging capabilities as discoverable services via the D-Bus system message bus for Linux applications.