31 个仓库
Components that map internal data structures to canonical JSON representations.
Explore 31 awesome GitHub repositories matching data & databases · JSON Message Serializers. Refine with filters or upvote what's useful.
Protocol Buffers 是一种语言中立、平台无关的结构化数据序列化机制。它提供了一个模式驱动的工具链,将声明式数据定义编译为类型安全的源代码,从而在不同编程语言编写的服务之间实现一致的通信和强类型的 API 契约。 该项目以其高效的二进制线路格式脱颖而出,该格式利用基于标签的编码和变宽整数压缩来最小化有效载荷大小和处理开销。它支持稳健的演进式模式管理,允许开发者在保持向后和向前兼容性的同时增量更新数据结构。这得到了版本化版本系统的进一步支持,该系统管理跨分布式软件组件的功能集和序列化逻辑。 除了核心二进制序列化外,该项目还包括用于模式验证的规范 JSON 转换、细粒度的符号可见性控制以及用于区分默认值和未设置值的字段存在性跟踪功能。它还提供专门的优化,例如 C++ 实现中基于竞技场(arena)的内存管理,以提高创建和清理复杂消息树时的性能。
Translate internal data structures into standard JSON representations to ensure compatibility with web-based systems and services.
This project is an agentic framework designed to enable autonomous web navigation and browser automation. It functions as a controller that translates natural language instructions into deterministic browser actions, allowing agents to interact with websites, perform data extraction, and manage complex authentication flows. By leveraging accessibility trees and semantic element resolution, the framework mimics human-like navigation, moving beyond brittle DOM selectors to interact reliably with modern web interfaces. The framework distinguishes itself through its focus on secure, scalable exec
Serializes browser interaction results into structured JSON to facilitate integration with external scripts.
WxJava is a set of Java libraries providing backend integration for the WeChat ecosystem and its various platform APIs. It serves as a comprehensive toolkit for managing identity, application infrastructure, and connectivity between backend services and the WeChat platform. The project provides specific SDKs for different WeChat domains, including official accounts, mini-program backends, and the WeChat Open Platform for third-party authorizations. It also includes a dedicated connector for integrating corporate communications and organizational workflows via the Enterprise WeChat platform.
Provides components that map internal Java data structures to canonical JSON representations for API exchange.
This project is a self-hosted AI frontend and web-based chat interface designed to interact with large language model APIs. It functions as an API-based chat client and dashboard that enables users to send prompts and receive responses from generative AI models. The application serves as a self-hosted AI gateway, providing API key proxying to connect official model keys to a web interface. It includes security and traffic controls, such as interface access restrictions via a shared secret key and request volume limiting to prevent service abuse. The system covers conversation data management
Uses JSON serialization to transmit prompts and model responses between client and server.
Agentscope is a comprehensive toolkit for developing and orchestrating autonomous multi-agent systems. It provides a unified framework for building agents that can reason, execute tools, and manage memory, enabling the creation of complex, collaborative workflows where multiple specialized agents interact to solve multi-step objectives. The platform distinguishes itself through a robust orchestration engine that supports both sequential and concurrent agent pipelines. It utilizes a centralized event bus for real-time telemetry, allowing developers to track agent reasoning, tool usage, and sys
Converts message objects to and from JSON format to facilitate storage, transmission, and persistence of communication history.
Loguru is a Python logging library and thread-safe framework designed for recording system events and diagnostic messages. It functions as a structured logging tool that can serialize messages into JSON strings with metadata for automated parsing and analysis. The library includes a specialized exception tracker that captures unhandled crashes across main and background threads, rendering detailed stack traces that include local variable values. It further distinguishes itself through a unified routing pipeline that can intercept messages from the standard library logging module and dispatch
Serializes log messages and metadata into JSON strings for automated parsing and analysis.
Node-RED is a visual, low-code automation framework designed for building event-driven data processing workflows. It provides a browser-based programming environment where users connect hardware devices, APIs, and online services by wiring together functional nodes in a directed graph. This visual approach allows for the creation of complex logic paths without the need for traditional source code. The platform is distinguished by its pluggable node architecture and portable flow serialization. Logic is represented as JSON-based data structures, enabling flows to be easily versioned, shared, a
Represents complex automation logic as portable JSON data structures for versioning and deployment.
brpc is a high-performance C++ RPC framework and network programming library designed for building distributed systems. It functions as a multi-protocol RPC server capable of hosting and detecting multiple communication protocols, including gRPC, Thrift, HTTP, Redis, and Memcached, on a single TCP port. The project distinguishes itself through high-throughput data transport and memory efficiency, utilizing RDMA-based transport to bypass the kernel TCP stack and zero-copy memory management to eliminate data duplication. It also implements the Raft algorithm for consensus-based state replicatio
Converts JSON request bodies into protobuf messages and serializes responses back to JSON.
This project is a high-performance, distributed API gateway designed to manage, secure, and observe traffic for microservices, serverless functions, and artificial intelligence model providers. It functions as a dynamic service proxy and cloud-native ingress controller, centralizing policy enforcement and traffic routing through a unified configuration interface that synchronizes state across multiple nodes in real time. The platform distinguishes itself through a highly extensible architecture that utilizes a high-performance scripting engine to execute modular logic directly within the requ
Maps RESTful HTTP endpoints and JSON payloads to binary methods and messages to serve existing clients.
grpcurl is a command-line interface and client tool for invoking gRPC methods and inspecting service definitions. It serves as a server debugger and reflection client, allowing users to call remote procedures and verify server responses from the terminal using JSON or protobuf formats. The tool distinguishes itself through the ability to discover available services and methods dynamically via a server reflection service or by loading local protobuf schema files. It can extract service descriptions from a server for local use and print specific schema symbol definitions. It covers a broad ran
Converts JSON or text input into binary protobuf messages using descriptors retrieved at runtime.
protobuf.js is a JavaScript and TypeScript library for encoding and decoding structured data using the Protocol Buffers binary format. It functions as a dynamic parser that can load and process schemas at runtime, a JSON transcoder for converting messages to human-readable formats, and a framework for building transport-agnostic remote procedure call clients. The project distinguishes itself by offering both dynamic message handling and a static code generator that produces TypeScript declarations and JavaScript modules to reduce runtime overhead. It also provides a reflection API for definin
Provides bidirectional mapping between structured Protocol Buffers messages and JSON strings or objects for API interoperability.
这是一个 Go 语言的 Protocol Buffers 实现,提供了一个二进制序列化框架,可将原生数据结构转换为紧凑的二进制格式,以实现高效的网络传输和存储。它充当语言绑定生成器,利用编译器插件从平台无关的协议缓冲区定义中创建 Go 源代码。 该实现包含一个 JSON 数据映射器,可将结构化二进制消息转换为 JSON 格式,以促进与 Web 服务和外部 API 的兼容性。它还通过使用通用模式定义在不同编程语言之间共享结构化数据,从而实现跨语言数据交换。 该库涵盖了广泛的数据序列化和反序列化功能,包括通过克隆、合并和比较来操作结构化消息的能力。它还提供了基于反射的消息检查机制和递归消息合并功能,以在分布式系统中保持状态一致性。
Provides bidirectional mapping between JSON text and binary Protobuf messages for web API compatibility.
BloomRPC is a graphical user interface client for discovering, testing, and querying gRPC service endpoints. It functions as an API tester that allows for sending requests and validating responses through a visual interface without the need to write manual client code. The tool supports service discovery via the gRPC reflection API or by parsing protobuf definition files to generate request and response structures. It translates human-readable JSON input into binary protobuf format and utilizes an HTTP/2 transport layer to communicate with backend services. The application provides capabilit
Translates human-readable JSON input into the binary protobuf format required for gRPC transmissions.
Weylus is a tablet-to-PC screen mirroring tool and remote input controller that transforms a mobile device into a digital graphic tablet emulator. It enables users to stream a computer display to a mobile device while translating touch gestures, keyboard strokes, and pen data into native computer mouse and keyboard events. The system specifically functions as a virtual secondary monitor and a digital graphic tablet emulator capable of capturing stylus pressure and tilt data for professional drawing. It supports multi-touch input mapping and allows for the configuration of a mobile device as a
Outputs system state and connection events as structured JSON for external automation scripts.
Kitex is a high-performance remote procedure call framework for building distributed microservices in Go. It provides a communication system compatible with gRPC and Protobuf standards and includes a suite of tools for microservices governance. The framework features proxyless service mesh integration, which allows it to manage network traffic and governance directly without adding sidecar proxy latency. It optimizes data throughput through a high-performance communication library that minimizes memory copies. The system covers a broad surface of distributed capabilities, including service d
Performs runtime serialization and deserialization using just-in-time techniques to bypass the need for static code generation.
This project is a Telegram command line interface and MTProto client. It functions as a userbot framework, providing a terminal-based environment to interact with Telegram accounts without a graphical user interface. The system differentiates itself through extensibility, offering Python bindings and a Lua scripting engine to automate account tasks and respond to messages. It also serves as a JSON-based chat exporter, capable of extracting user metadata and conversation histories into structured files. The client covers core messaging capabilities, including text exchange, group chat managem
Maps internal messaging objects and peer metadata to structured JSON representations for export.
MessagePack-CSharp is a high-performance binary serializer for .NET that converts C# objects to and from the compact MessagePack format. It uses compile-time source generation to produce AOT-safe formatters and resolvers, eliminating runtime reflection and enabling ahead-of-time compilation scenarios. The serializer encodes object fields as integer indices instead of string keys, producing compact binary output with deterministic field ordering, and provides stack-allocated reader and writer structs for direct encoding and decoding of MessagePack primitives without heap allocations. The libra
Serializes and deserializes objects without predefined schemas via union attributes.
NLog is an open-source logging framework for .NET that functions as a structured logging library and log routing engine. It captures log events with named parameters as searchable data rather than plain text and directs these messages to various output destinations based on severity and source. The framework is designed as an extensible platform, supporting custom targets, layout renderers, and filters that can be loaded from external assemblies or defined in code. It features a dynamic configuration system that allows logging targets, rules, and layouts to be updated via XML or programmatic
Outputs event properties as JSON or XML using configurable layouts.
Bananas is a peer-to-peer screen sharing application that uses WebRTC to establish direct browser-to-browser connections, enabling real-time screen sharing without routing data through a central server. The application assigns ephemeral identity tokens tied only to session IDs, eliminating the need for user accounts or persistent login systems, and generates unique alphanumeric session URLs for one-click joining. The application distinguishes itself through collaborative multi-cursor overlays, where each participant's cursor is rendered as an HTML5 Canvas layer composited over the shared scre
Serialises mouse coordinates and ping events as JSON messages over the data channel for real-time remote rendering.
grpcui 是一个基于浏览器的交互式 Web 界面和 API 客户端,用于向 gRPC 服务器执行远程过程调用。它作为一个 HTTP 转 gRPC 网关,将 JSON 有效载荷转换为二进制 protobuf 消息,允许用户通过可视化 Web 界面触发网络请求并检查响应。 该工具通过查询服务器反射或加载本地 protobuf 描述符文件来识别可用服务和方法签名,从而提供模式浏览和发现功能。它使用这些定义自动生成用于构建请求数据的动态输入表单,包括对复杂嵌套结构的支持。 该项目涵盖 API 测试和客户端调试,支持审查响应体、状态码和元数据头。它还通过支持纯文本、TLS 和带有可配置客户端证书的相互认证的传输层来管理安全连接。
Converts structured JSON request bodies into the binary wire format required for remote procedure calls.