66 个仓库
Systems where a central server manages state and multiple clients provide a view or interface to that state.
Distinct from Session Servers: The candidates focus on network session persistence or recording, not the structural pattern of a local server managing an editor session for multiple terminal windows.
Explore 66 awesome GitHub repositories matching software engineering & architecture · Client-Server Architecture. Refine with filters or upvote what's useful.
Chat2DB is an AI-powered SQL client and multi-database GUI manager designed for managing various relational and NoSQL database systems. It serves as a visual database management tool and a natural language to SQL interface, allowing users to convert plain text descriptions into executable and optimized queries. The platform distinguishes itself through automated business intelligence capabilities, which include the generation of real-time data visualization dashboards and AI-driven data analysis from spreadsheets. To ensure data privacy, it supports secure local AI deployment, enabling large
Supports flexible deployment as either a standalone local desktop binary or a centralized web-based server.
Hystrix is a latency and fault tolerance library designed to prevent cascading failures in distributed systems. It functions as a circuit breaker implementation that monitors failure thresholds and opens circuits to isolate remote calls when downstream services degrade. The project distinguishes itself by providing multiple isolation mechanisms, utilizing dedicated thread pools and semaphores to ensure that latency in one dependency does not saturate the entire system. It also features a request collapsing and batching engine that groups concurrent calls into single executions to reduce the t
Implements non-blocking execution patterns to handle long tasks without freezing the main execution thread.
MagicMirror is an open source framework for creating personalized information dashboards, specifically designed for use as a modular smart mirror platform and a plugin-based dashboard framework. It functions as a system for aggregating data feeds and modular components to create a centralized information hub. The platform utilizes a module-based plugin architecture that allows for the development and integration of custom third-party plugins through a standardized interface. This extensibility enables the creation of personalized displays and custom data widgets. The system supports a headle
Implements a system where a central server manages the dashboard state and remote clients render the interface.
xi-editor is a high-performance text editor core written in Rust. It employs a client-server architecture that separates the backend editor logic from the user interface, allowing diverse frontends to communicate with the core via a standardized protocol. The project is distinguished by its use of rope-based text buffers for efficient manipulation of large documents and a collaborative engine powered by conflict-free replicated data types to synchronize concurrent edits. It further features an extensible plugin system that integrates external binaries and third-party tools through JSON-based
Implements a client-server architecture where a Rust backend manages editor state and communicates with diverse frontends.
LanguageTool is a multilingual grammar and style checking engine designed to detect spelling, grammar, and writing errors across multiple languages. It provides automated proofreading capabilities that can be deployed as a self-hosted server or executed as a standalone local desktop application. The project distinguishes itself through a flexible rule development framework, allowing linguistic patterns to be defined via XML or implemented as custom Java classes. It utilizes n-gram frequency modeling for confused word detection and supports neural word embeddings to improve disambiguation betw
Employs a client-server architecture where a central HTTP server handles the heavy lifting of text analysis.
ar-cutpaste is an augmented reality asset extraction tool and prototype designed to isolate objects from a live camera feed and transfer them into image editing software. It functions as a mobile-to-desktop bridge that uses machine learning to remove backgrounds from live images, creating digital cutouts for use in image composition. The system establishes a local server connection to transmit image data and spatial coordinates from a mobile device to a design application. This bridge uses a remote socket mechanism and a secure password to inject captured assets directly into a desktop worksp
Uses a client-server architecture to stream captured images from mobile to a workspace via a middle layer.
该项目是一个高性能 BERT 嵌入服务和推理服务器,旨在将文本序列映射为固定长度的数值向量。它作为一个机器学习微服务和分布式模型服务器,将请求处理与繁重的计算解耦。 该系统利用 ZeroMQ 消息基础设施在分布式客户端和推理服务器之间提供低延迟通信。它结合了服务器端批处理和 GPU 工作负载扩展,以最大化硬件利用率并管理高请求量。 该平台通过在共享向量空间内为文本和图像生成跨模态嵌入来支持语义搜索基础设施。这实现了跨模态搜索、内容相关性排名以及基于视觉内容与文本描述之间语义对齐的结果重排序。 该服务可以作为可通过 gRPC、HTTP 或 WebSocket 协议访问的弹性微服务进行部署,具有用于处理大数据集的非阻塞双工流。
Features non-blocking duplex streaming for requests and responses to handle large datasets efficiently.
co is a JavaScript generator control flow library and non-blocking workflow engine. It manages asynchronous logic by using generators and promises to simulate a synchronous coding style. The project transforms generator functions into standard functions that return promises, ensuring compatibility with non-generator interfaces. It also functions as a promise-based asynchronous orchestrator that executes multiple operations concurrently through the recursive resolution of nested promise collections. The library provides high-level primitives for asynchronous flow control and non-blocking work
Implements non-blocking execution patterns to manage complex sequences of asynchronous events without freezing the thread.
Kakoune is a scriptable, modal text editor for the terminal that employs a client-server architecture. This model allows multiple terminal windows to connect to a single editing session, providing a programmable environment for managing source code and text. The editor is distinguished by its selection-first logic, where a text region must be predefined before a command is applied. It leverages regular expressions to manage multiple cursors and perform bulk edits across complex text patterns, and it integrates deeply with the shell by piping selections through external programs and filters.
The editor connects multiple terminal windows to a single editing session using a client-server architecture.
nerdctl is a command-line tool that manages containers and images using containerd as the runtime, providing a Docker-compatible interface for container lifecycle management. It supports running containers with the same command syntax and flags as Docker, including multi-container Compose workflows, and enables rootless container execution without host kernel escalation. The tool extends beyond basic container management with several advanced distribution and security capabilities. It can start containers before full image download by fetching only metadata and on-demand layers from eStargz-f
Delegates image building to BuildKit's concurrent build engine through a dedicated client-server protocol.
go-swagger is a toolkit for working with Swagger/OpenAPI 2.0 specifications in Go. It generates server, client, and CLI code from a specification document, and can also produce a specification by scanning annotated Go source code. The project includes a static validation engine that checks documents against the schema and project-specific rules, and a specification transformation pipeline that resolves, flattens, and merges documents. The toolkit generates both client and server code from the same specification, ensuring consistency in request and response handling. It also produces a command
Generates both client and server code from the same specification, ensuring request/response handling consistency.
Musicbox is a terminal-based music player and command-line interface client for NetEase Cloud Music. It functions as a keyboard-driven audio player that enables users to stream music, manage playlists, and browse charts directly within a terminal environment. The project utilizes a headless music daemon to separate background audio playback and authentication from the command-line interface. This architecture allows for audio control via external commands or agents and includes a desktop lyrics overlay capable of dual-line rendering and foreign language translations. The system covers high-f
Employs a client-server architecture to separate a persistent background audio daemon from the terminal user interface.
lf is a terminal-based file manager and TUI file explorer that provides keyboard-driven navigation for browsing and organizing files and directories. It operates as a shell-integrated tool that synchronizes the current working directory with the calling shell and supports vi-style keybindings for filesystem operations. The project distinguishes itself through its ability to render images directly in the terminal via the SIXEL graphics protocol and its shell-driven execution model, which allows users to extend functionality using external shell scripts and commands. It also implements a server
Uses a background server and Unix domain sockets to synchronize state and dispatch commands across multiple instances.
Psst is a cross-platform Spotify music client and library manager. It functions as a desktop application for streaming music and podcasts, providing a native playback interface and tools for organizing saved albums and playlists. The project is distinguished by a client-server architecture that separates the core audio playback engine from the user interface. This allows for dual-interface state sharing, where a graphical user interface and a dedicated command-line interface can simultaneously control the same playback session. The application covers audio streaming with loudness normalizati
Employs an architecture where a central server manages playback state for multiple user interfaces.
Supervisor is a process control system for Unix environments that ensures background processes remain running by automatically restarting them if they crash or exit. It functions as a daemon manager that provides a centralized way to start, stop, and monitor the lifecycle of long-running background tasks. The system utilizes a client-server architecture to control multiple processes through a command line interface. This allows for the orchestration of system services and background daemon control without requiring manual shell intervention. The tool covers application process supervision an
Provides a client-server architecture allowing a CLI tool to control background processes via a central daemon.
Dogehouse is an open-source voice chat platform that enables users to create and join real-time voice conversation rooms with moderation controls. The platform is built around a room-based channel architecture where users are organized into isolated virtual rooms, with audio streams routed only to participants within each room. The platform separates its voice processing logic into a standalone server component, distinct from the client interface, and uses server-side audio mixing to combine multiple incoming audio streams before broadcasting to reduce client bandwidth. Real-time voice data i
Separates voice processing into a standalone server component distinct from the client interface.
Solaar is a device management tool and configuration suite for Logitech wireless peripherals on Linux. It serves as an input peripheral monitor that tracks battery levels and connection link quality via a system tray application, while providing a receiver manager for pairing and unpairing wireless devices with proprietary USB receivers. The project features an input device automation engine that maps hardware events and mouse gestures to simulated keyboard inputs or system commands. This allows for the creation of custom rules that trigger actions based on device notifications or specific wi
Implements a daemon-client architecture to separate low-level hardware monitoring from the user interface.
Objection is a dynamic instrumentation framework and runtime exploration toolkit for mobile application security analysis. It provides a command-line interface to interact with the memory and state of iOS and Android applications during active execution, serving as a toolkit for runtime analysis and security testing. The project distinguishes itself by providing specialized capabilities to bypass common mobile security controls, including SSL pinning, biometric authentication, and root or jailbreak detection. It enables the extraction of sensitive credentials and data from secure storage syst
Uses a client-server architecture to communicate between a host machine's CLI and a runtime agent in the target process.
Mailpile is an encrypted email client and high-volume mail indexer that provides a web-based portal for managing electronic mail. It functions as a private email management system designed to protect user privacy and data control. The project features a search engine optimized for indexing and retrieving large volumes of email on consumer hardware. It includes a Bayesian email filter for automated message classification and tagging. The system supports secure communication through the integration of public-key encryption and signing for sending and receiving messages. Additional capabilities
Employs a client-server architecture that separates the mail processing engine from the user interface.
Mopidy is a modular, headless audio streaming server and Python-based music server. It functions as a remote controlled music player that streams audio from local files and online services through a unified architecture. The system is built as an extensible platform that supports custom plugins for music backends, audio sinks, and remote control interfaces. This framework allows for the integration of new audio sources and output devices via custom extensions. The server provides capabilities for multi-source audio streaming and remote playback management. Users can manage music playback and
Employs a client-server architecture where a headless server manages playback state for remote controllers.