54 个仓库
Systems that separate processing and storage from user interfaces via standardized web APIs.
Distinguishing note: Focuses on the architectural pattern of request-response communication.
Explore 54 awesome GitHub repositories matching software engineering & architecture · Client-Server Architectures. Refine with filters or upvote what's useful.
Moby is an OCI container engine and runtime manager designed for building, running, and managing isolated containers based on Open Container Initiative standards. It functions as a container daemon and image builder, providing a core engine to orchestrate the full lifecycle of containers and the packaging of source code into portable images. The project provides a standardized HTTP interface that allows for programmatic container management, enabling external clients to control daemon settings and container operations. It supports a rootless security model, allowing the engine daemon to execu
Implements a client-server architecture separating the container daemon from CLI tools via a standardized HTTP API.
Jellyfin is a self-hosted media server that organizes digital media collections and streams content to various client devices over a local or remote network. It utilizes a client-server architecture that separates media processing and storage from user interfaces, communicating through a standardized web-based application programming interface. The platform is designed for cross-platform hosting, running consistently across Linux, Windows, and macOS through native binaries or containerized environments. It features a hardware-accelerated transcoding engine that offloads intensive video conver
Separates media processing and storage from user interfaces using a standardized web-based application programming interface.
Lapce is a high-performance text editor built with Rust that utilizes hardware acceleration for fast rendering and responsiveness. It functions as a modal text editor with Vim-style keybindings to minimize hand movement, an LSP client for language intelligence, and a remote development environment for editing files and executing code on distant servers. The editor features an extensible architecture based on the WebAssembly System Interface, allowing it to execute plugins compiled to WASI for cross-language functionality. It further distinguishes itself by implementing the Debug Adapter Proto
Provides a remote development environment that synchronizes local interface states with a distant server.
Open-Assistant is a conversational assistant and a system for creating large language model training datasets. It utilizes a client-server architecture that separates the conversational user interface from language model processing through an API. The project features a retrieval-augmented generation system that fetches external data from search engines to provide real-time knowledge. It also includes a standardized plugin interface for connecting language models to third-party systems and external software tools. The system provides a pipeline for collecting and labeling human-annotated pro
Implements a decoupled architecture that separates the chat user interface from the language model processing via an API layer.
Deskflow is a cross-platform input multiplexer that enables the use of a single mouse and keyboard to control multiple computers. By routing input signals over a local network, it functions as a software-based replacement for physical hardware switches, allowing users to manage several systems as a unified workstation environment. The software operates using a client-server topology where a central controller manages input focus and connection state across remote nodes. It normalizes disparate operating system input APIs into a unified format, enabling consistent cursor movement and periphera
Implements a central controller architecture to manage connection state and input focus across remote nodes.
Cutter is a binary analysis platform and graphical user interface for the Rizin reverse engineering framework. It provides an environment for analyzing the internal logic and data structures of compiled binaries through integrated disassembly and visualization. The platform supports a containerized deployment model to provide isolated environments for binary analysis, which is used to examine suspicious binaries without risking the host system. It is an extensible security tool that allows for the addition of custom analysis capabilities and visualizers via native plugins and scripts. The to
Implements a client-server architecture to decouple the visual interface from the underlying analysis engine.
This project is a first-person shooter game engine and a pseudo-3D rendering engine written in C. It serves as a software framework for rendering three-dimensional environments and managing entity physics. The engine includes a networked multiplayer system designed to synchronize game state and player actions across a client-server network. It utilizes a portable codebase that allows game logic to be adapted across different operating systems and hardware architectures. Core capabilities cover 3D game engine architecture, including spatial partitioning and depth-based rendering. The system a
Synchronizes game state and player actions using a client-server architecture for multiplayer modes.
Sourcetrail is an interactive source code explorer and visualizer designed for indexing and navigating relationships between symbols and structures across large, multi-language codebases. It functions as a static analysis indexer and code dependency visualizer that maps calls and dependencies between source files to help reveal project architecture. The tool enables multi-language project analysis by using a language-agnostic indexing system to track symbols across different programming languages within a single interface. It allows for the discovery of software architecture and the explorati
Separates the heavy indexing and analysis logic in a backend process from the interactive visual user interface.
CVAT 是一个开源计算机视觉标注工具和可视化数据集管理平台。它提供了一个自托管界面,用于标注图像、视频和 3D 数据,以创建视觉 AI 模型的数据集。 该平台具有 AI 辅助数据标注功能,可自动创建掩码和边界框,并利用插件系统连接外部机器学习模型。它包括一个基于共识的质量保证系统,通过比较独立标注来验证标签准确性。 该系统涵盖协作团队管理、通过任务分解进行项目组织以及远程云存储集成。它还提供用于程序化工作流控制以及以行业标准格式导入和导出数据的 REST API。
Utilizes a client-server architecture that separates the annotation interface from the data processing backend via a REST API.
This project is a self-hosted question and answer platform and knowledge management system. It provides a centralized repository for documented answers and community discussions used to support users and resolve technical issues. The system functions as a plugin-based community forum, utilizing a modular extension system to add custom features and tools. It employs a decoupled architecture with a RESTful API backend to separate business logic from the user interface. The platform covers several domain areas including internal knowledge management, customer help centers, and community Q&A hos
Implements a client-server architecture that separates processing and storage from the user interface via a REST API.
Gitpod is a cloud development environment platform and Docker-based workspace orchestrator. It provisions on-demand, containerized Linux workspaces that synchronize directly with remote version control repositories to eliminate manual local setup. The platform functions as an infrastructure-as-code environment manager, using declarative configuration files to define base images, tool versions, and environment variables. This ensures team-wide consistency and reproducible workspace configurations across different projects. It provides ephemeral coding workspaces for rapid prototyping, debuggi
Runs toolchains on remote cloud servers and streams the interface to local clients for a seamless coding experience.
Minetest is an open-source voxel game engine and platform used to create and share moddable 3D block-based games. It provides a framework for building interactive grid environments and generating custom voxel worlds. The project features a Lua-based modding framework that allows for the extension of game behavior and the addition of custom content without altering the core engine. This data-driven system supports a dedicated workflow for modifying game environments and logic. The engine supports multiplayer game hosting through a dedicated server architecture, enabling multiple players to co
Separates world state management on a dedicated server from local rendering and input on the client.
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
Uses a persistent background daemon to manage widget state and handle communication with client instances.
OpenRefine is a data cleaning tool and wrangling platform used to transform raw, messy datasets into consistent and structured formats. It operates as a Java-based data processor that runs a local server and provides a web browser interface for managing and manipulating data. The platform includes a data reconciliation engine for matching local entries against external knowledge bases to standardize entities. It also functions as a web data augmentation tool, allowing users to fetch and integrate information from external web sources to enrich their datasets. The system provides a transforma
Provides a local Java server that serves a browser-based interface for data manipulation.
This project is a full-stack project management web application designed for organizing work and managing project workflows. It consists of a Node.js TypeScript REST API for server-side business logic and a React component UI library for the frontend interface. The application implements a board-based task visualization system with customizable status workflows. It provides mechanisms for issue workflow management, including task prioritization and team member assignment to track responsibilities and progress. The system is built with a decoupled client-server architecture using full-stack T
Decouples the user interface from business logic by separating the React frontend from the Node.js backend.
TrinityCore is an open-source game backend and MMORPG game server emulator. It is implemented as a C++ game engine designed to handle real-time network traffic and game state synchronization, utilizing a MySQL database schema to store player profiles, inventories, and world state. The project provides the infrastructure necessary for MMORPG server hosting and private game server administration. It includes tools for game world customization, allowing for the modification of game mechanics, item statistics, and quest scripts. The system manages virtual world infrastructure through multi-threa
Provides real-time synchronization of game world state between the server and connected clients.
The Source Engine SDK is a C++ game development kit and modding framework designed for creating game modifications and custom gameplay extensions for the Source engine. It provides a structured environment and a collection of source code and binaries required to build custom content for compatible titles. The kit serves as a toolset for C++ game engine programming, enabling the development of custom gameplay mechanics, new rulesets, and game modes. It includes the libraries and headers necessary to compile and build gameplay extensions and custom game content.
Synchronizes multiplayer game state between a central server and remote clients using snapshot-based replication.
This project is an AI-powered IDE extension and LLM coding assistant that provides a conversational interface for generating, refactoring, and debugging code. It functions as an AI agent framework and a Model Context Protocol client, connecting AI models to external data sources and tools to automate complex development tasks. The system is distinguished by its use of autonomous AI agents capable of multi-step task execution, including the ability to read files, modify code, and run terminal commands iteratively. It supports recursive agent orchestration through subagent delegation and employ
Hosts development environments on remote machines for secure access via a local client.
StableStudio is a generative AI frontend and image interface designed for creating and editing visual content. It provides a web-based graphical interface that connects to generative AI models via API connections to facilitate image synthesis and modification. The project functions as a pluggable AI backend manager, using a modular system to standardize diverse AI provider APIs into a unified format. This architecture allows users to swap between different generative AI backends and providers to compare outputs and optimize production. The system manages long-running generation tasks through
Uses a standard client-server architecture to facilitate interaction between the web frontend and AI processing server.
This project is an open-source 3D game engine designed for building high-fidelity games, simulations, and cinematic environments. It functions as a robotics simulation platform with native integration for ROS 2 to model robot controllers and sensors. The engine features a multi-threaded Forward+ physically based renderer that supports hardware-accelerated ray tracing and global illumination. The system is built on a modular extension architecture using Gems to add or replace features without modifying core binaries. It includes a native SDK for AWS cloud integration, enabling IAM authenticati
Synchronizes entity data from server to clients using low-latency transport and latency compensation.