7 dépôts
Tools for parsing, encoding, and manipulating structured data formats.
Distinguishing note: Focuses on data format handling rather than general-purpose language features.
Explore 7 awesome GitHub repositories matching data & databases · Data Serialization Libraries. Refine with filters or upvote what's useful.
SheetJS is a comprehensive library for parsing, manipulating, and generating complex spreadsheet file formats. It functions as a universal data processor that maps diverse binary, XML, and text-based file structures into a unified internal object model, allowing developers to create, read, and transform workbook data programmatically. The library distinguishes itself through a portable logic layer that provides a consistent execution environment across web browsers, server-side runtimes, and native desktop or mobile applications. By utilizing stream-based processing, it handles large files in
The library transforms raw data retrieved from network endpoints into formatted spreadsheet documents by processing the information into structured rows and columns for user download.
This project is a framework for the efficient serialization and deserialization of data structures. It provides a unified, macro-based interface that automates the conversion of complex internal objects into standardized formats and reconstructs them from raw input streams or buffers. By leveraging compile-time code generation, the library minimizes manual implementation overhead while ensuring consistent logic across diverse data types. The framework distinguishes itself through a format-agnostic data model and a visitor-based parsing architecture that decouples data structures from specific
Enables efficient serialization in memory-constrained environments without requiring a standard library.
POCO is a comprehensive C++ application framework that provides a cross-platform set of libraries for building network-centric applications. It offers a unified abstraction layer that wraps platform-specific APIs, enabling the same code to run across desktop, server, mobile, IoT, and embedded systems. The framework is organized into modular libraries that can be compiled and linked selectively, allowing developers to include only the components their application needs. The framework distinguishes itself through its broad coverage of application infrastructure needs, including threading and sy
Provides libraries for parsing and generating JSON and XML structured data.
ArduinoJson is a C++ library for parsing and manipulating JSON data and MessagePack binary streams on microcontrollers with limited memory and processing power. It provides the core primitives necessary for embedded data serialization and parsing, enabling devices to exchange structured data over serial or network interfaces. The library is distinguished by its focus on microcontroller memory management, employing strategies such as pool-based allocation, string deduplication, and non-owning string views to minimize RAM usage. It further optimizes for constrained environments by allowing cons
Provides memory-optimized serialization utilities for converting structured data to JSON or MessagePack on embedded systems.
Ce projet est une extension de la bibliothèque standard Swift et une bibliothèque système multiplateforme. Il fournit une collection de types utilitaires et de structures de données fondamentales qui étendent le langage Swift de base, agissant comme une couche d'interface indépendante de l'OS pour gérer les opérations système telles que la mise en réseau et les systèmes de fichiers. Le projet propose une couche d'interopérabilité C++ spécialisée qui mappe les types et fonctions C++ vers des interfaces Swift compatibles pour une communication inter-langages. Cela inclut un mécanisme de pontage pour gérer les types de la bibliothèque standard et les conteneurs étrangers, permettant aux types C++ d'être mappés en tant que types de référence ou de valeur pour synchroniser la gestion mémoire et la sémantique. Les capacités étendues incluent la sérialisation de données pour l'encodage et le décodage de formats structurés comme JSON, ainsi qu'un framework d'internationalisation pour gérer le formatage localisé, les calendriers et les paramètres régionaux. Il fournit également une gestion des données de base pour manipuler les URL et les données binaires brutes.
Provides a toolkit for encoding and decoding structured data formats like JSON into native Swift types.
Nanopb est une implémentation C légère de Protocol Buffers conçue pour les systèmes aux ressources limitées et les microcontrôleurs. Il fonctionne à la fois comme une bibliothèque de sérialisation embarquée pour encoder et décoder des données structurées, et comme un générateur de code qui transforme les fichiers de définition en fichiers source et en-tête C compacts. Le projet se distingue par son accent sur l'allocation mémoire statique, utilisant des tailles maximales fixes pour les chaînes et les tableaux afin d'éviter l'allocation mémoire dynamique et la fragmentation du tas. Il emploie un mécanisme de streaming basé sur des callbacks pour traiter les messages ou les champs qui dépassent la RAM physique disponible, permettant la gestion de données de longueur variable sans épuiser la mémoire système. La bibliothèque fournit de larges capacités pour la sérialisation binaire, incluant le calcul de taille encodée, le suivi de présence des sous-messages et le framing au niveau transport. Elle inclut également des utilitaires de réflexion pour l'itération sur les champs, la validation de chaînes UTF-8 et l'application stricte des limites pour garantir la sécurité mémoire lors du parsing d'entrées binaires non fiables.
Provides a serialization library optimized for memory-constrained microcontrollers without dynamic memory allocation.
This is a TOML parser and serializer for the Go language. It serves as a data serialization library and configuration file mapper that encodes and decodes data between Go structures and the TOML configuration format. The library provides interfaces for custom type marshaling, allowing for specialized logic when parsing or serializing specific data types. It transforms structured objects into deterministic TOML documents for storage or transmission. The project covers a broad range of data processing capabilities, including structured value encoding, TOML data generation, and metadata inspect
A comprehensive library for parsing, encoding, and manipulating structured TOML data.