awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
Back to nanopb/nanopb

Projects sharing features with Nanopb

30 open-source projects similar to nanopb/nanopb, ranked by shared indexed features. Tags may describe platforms or build tools rather than the same primary purpose. Check each project’s use case, license, and deployment requirements before treating it as a replacement.

  • serde-rs/serdeserde-rs avatar

    serde-rs/serde

    10,457View on GitHub↗

    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

    Rustderiveno-stdrust
    View on GitHub↗10,457
  • bblanchon/arduinojsonbblanchon avatar

    bblanchon/ArduinoJson

    7,176View on GitHub↗

    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

    C++arduinoarduino-libraryc-plus-plus
    View on GitHub↗7,176
  • protocolbuffers/protobufprotocolbuffers avatar

    protocolbuffers/protobuf

    71,359View on GitHub↗

    Protocol Buffers is a language-neutral, platform-agnostic mechanism for serializing structured data. It provides a schema-driven toolchain that compiles declarative data definitions into type-safe source code, enabling consistent communication and strongly typed API contracts across services written in different programming languages. The project distinguishes itself through a highly efficient binary wire format that utilizes tag-based encoding and variable-width integer compression to minimize payload size and processing overhead. It supports robust evolutionary schema management, allowing d

    C++marshallingprotobufprotobuf-runtime
    View on GitHub↗71,359

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Find more with AI search
  • zserge/jsmnzserge avatar

    zserge/jsmn

    4,065View on GitHub↗

    jsmn is a lightweight JSON parser library written in C. It provides zero-copy tokenization and incremental parsing designed for use in embedded systems and memory-constrained environments. The library identifies structural JSON elements by providing offsets into the original string rather than allocating new memory for data. It uses a single-pass scanning method and requires static-buffer allocation, meaning the caller provides the memory for tokens to avoid dynamic allocation during the parsing process. The parser supports incremental streaming, allowing it to process JSON data in chunks fr

    Cjson-datajson-stringparsing
    View on GitHub↗4,065
  • tokio-rs/prosttokio-rs avatar

    tokio-rs/prost

    4,717View on GitHub↗

    Prost is a Protocol Buffers implementation for Rust that functions as a binary serialization framework and code generator. It translates schema definitions into idiomatic Rust structs and enums, providing the logic necessary to encode and decode structured data into the Protocol Buffers binary format. The project distinguishes itself through a no-std implementation, allowing it to operate in embedded or kernel environments that lack a standard library. It also serves as a schema introspector by emitting file descriptor sets, which enables the programmatic analysis of original schema definitio

    Rustprotobufrust
    View on GitHub↗4,717
  • mholt/papaparsemholt avatar

    mholt/PapaParse

    13,492View on GitHub↗

    PapaParse is a delimited text processing library that converts CSV files into JSON objects or arrays. It provides a suite of tools for parsing delimited text and transforming structured data objects back into CSV formats through bidirectional serialization. The library is characterized by its ability to process massive datasets using incremental streaming and chunk-based processing to prevent memory overload. It includes an automatic delimiter detector to identify separator characters without manual configuration and utilizes web workers to offload parsing logic to background threads, keeping

    JavaScript
    View on GitHub↗13,492
  • fasterxml/jacksonFasterXML avatar

    FasterXML/jackson

    9,740View on GitHub↗

    Jackson is a Java data binding framework and multi-format data serializer used to translate data structures into native language objects. It functions as a JSON data binding library and a streaming parser that reads and writes data as discrete tokens to process large datasets with minimal memory. The project distinguishes itself through a bytecode serialization accelerator that replaces standard reflection with generated bytecode to increase data binding speed. It employs a module-based extensibility model to support a wide range of formats beyond JSON, including XML, YAML, CSV, TOML, and bin

    hacktoberfestjacksonjava-json
    View on GitHub↗9,740
  • davyxu/cellnetdavyxu avatar

    davyxu/cellnet

    4,061View on GitHub↗

    Cellnet is a Go networking framework designed for building distributed systems and peer-to-peer networks. It provides a multi-protocol transport layer that standardizes message exchange across TCP, UDP, and WebSockets, utilizing a binary message codec system to map message types to unique identifiers for network transmission. The framework is distinguished by its remote procedure call library, which enables the execution of functions on remote peers using synchronous or asynchronous request patterns. It further differentiates itself with an asynchronous event dispatcher that processes network

    Go
    View on GitHub↗4,061
  • syoyo/tinygltfsyoyo avatar

    syoyo/tinygltf

    2,471View on GitHub↗

    tinygltf is a C++ library designed as a parser, serializer, and validation tool for 3D models in the glTF 2.0 binary and JSON formats. It functions as a streaming processor that can handle large 3D asset files incrementally through a callback-driven approach to reduce memory overhead. The library uses a header-only implementation to simplify integration. It employs memory mapping to map binary buffers directly into memory and utilizes a symmetric parse-write pipeline to maintain data consistency between reading and writing files. The system provides capabilities for 3D asset processing, incl

    C++cppgltf
    View on GitHub↗2,471
  • golang/protobufgolang avatar

    golang/protobuf

    10,074View on GitHub↗

    This project is a Protocol Buffers implementation for Go, providing a binary serialization framework to convert native data structures into a compact binary format for efficient network transmission and storage. It functions as a language bindings generator, utilizing a compiler plugin to create Go source code from platform-neutral protocol buffer definitions. The implementation includes a JSON data mapper that transforms structured binary messages into JSON format to facilitate compatibility with web services and external APIs. It also enables cross-language data exchange by using a common s

    Go
    View on GitHub↗10,074
  • google/pebblegoogle avatar

    google/pebble

    4,963View on GitHub↗

    Pebble is a reference implementation of wearable firmware intended for embedded system research and firmware analysis. It serves as a technical blueprint for understanding how smartwatch operating systems are structured and executed on constrained hardware. The codebase focuses on low power hardware rendering and the management of pixel data and display buffers to minimize energy consumption. It provides a historical guide for watch application development and the study of wearable software architecture. The system incorporates a hardware abstraction layer, a monolithic firmware image, and a

    C
    View on GitHub↗4,963
  • z-libs/zen-cz-libs avatar

    z-libs/Zen-C

    3,819View on GitHub↗

    Zen-C is a multi-target systems language and source-to-source compiler that translates high-level logic into human-readable GNU C or C11 code. It functions as a JIT-enabled programming language with an in-process compiler for real-time interactive code evaluation and testing. The project serves as a CUDA GPU kernel generator, mapping specialized syntax to CUDA C++ using device attributes to target graphics hardware. It acts as an interoperability layer capable of emitting compatible code for C++, Objective-C, and Lisp to bridge native system frameworks and libraries. The language includes an

    Cccompilerlsp
    View on GitHub↗3,819
  • open62541/open62541open62541 avatar

    open62541/open62541

    3,033View on GitHub↗

    open62541 is an open-source implementation of the OPC Unified Architecture standard, providing a complete stack for industrial automation and data exchange. It functions as both an OPC UA server and client, enabling the creation of an object-oriented address space to model physical industrial assets and their relationships. The project is designed for versatility across diverse hardware, offering a C99 library that can be deployed to both cloud servers and resource-constrained embedded environments. It distinguishes itself through a pluggable network layer and interface-based security backend

    Ccclientiec-62541
    View on GitHub↗3,033
  • seaql/sea-ormSeaQL avatar

    SeaQL/sea-orm

    9,410View on GitHub↗

    Sea-ORM is an asynchronous SQL object-relational mapper and database toolkit for mapping relational tables to strongly typed objects. It provides a relational database mapper for performing CRUD operations across MySQL, PostgreSQL, and SQLite, and includes a programmatic dynamic query builder for constructing complex SQL statements. The project distinguishes itself by providing a GraphQL schema generator that transforms database entities into typed schemas with built-in pagination and filters. It also features a dedicated database migration tool for defining and applying versioned schema chan

    Rustdatabasehacktoberfestloco
    View on GitHub↗9,410
  • uscilab/cerealUSCiLab avatar

    USCiLab/cereal

    4,676View on GitHub↗

    Cereal is a C++ serialization library and object persistence tool used to convert data types and containers into formats for storage or transmission. It is implemented as a header-only library, allowing it to be included directly in source code without the need for a compiled binary. The library supports multiple data representations, including binary, XML, and JSON. It provides the ability to define custom archives, enabling the development of specialized output formats to control how data is encoded and stored. The system handles the conversion of complex objects through template-based ser

    C++c-plus-pluscerealserialization
    View on GitHub↗4,676
  • felixguendling/cistafelixguendling avatar

    felixguendling/cista

    2,225View on GitHub↗

    Cista is a simple, high-performance, zero-copy C++ serialization & reflection library.

    C++benchmarkcppcpp17
    View on GitHub↗2,225
  • prestodb/prestoprestodb avatar

    prestodb/presto

    16,711View on GitHub↗

    Presto is a distributed SQL query engine designed for high-performance analytical processing across heterogeneous data sources. It functions as a data federation platform and massively parallel processing engine, allowing users to execute interactive queries against diverse storage systems without requiring data migration. By mapping remote metadata and structures to a unified relational namespace, it enables seamless cross-platform analysis through a standard SQL interface. The engine distinguishes itself through a pluggable connector architecture and a shared-nothing distributed processing

    Javabig-datadatahadoop
    View on GitHub↗16,711
  • mgravell/protobuf-netmgravell avatar

    mgravell/protobuf-net

    4,952View on GitHub↗

    protobuf-net is a binary serialization framework and .NET library that implements the Protocol Buffers specification. It functions as a schema-based serialization tool and contract-first data mapper, converting complex object graphs into a compact binary format for storage and network transmission. The library enables cross-platform data exchange and high-performance networking by reducing payload sizes and processing time. It specifically supports object hierarchy persistence, allowing the serialization and reconstruction of complex class structures that include inheritance and derived types

    C#
    View on GitHub↗4,952
  • bufbuild/bufbufbuild avatar

    bufbuild/buf

    11,211View on GitHub↗

    Buf is a toolchain for managing the full lifecycle of Protocol Buffers schemas. It provides a set of tools for schema governance, including linting to enforce style guides, a breaking change detector to ensure backward compatibility, and a system for producing language-specific source code via local or remote plugins. The project distinguishes itself through a remote schema registry that centralizes the hosting, versioning, and distribution of Protocol Buffers modules. This registry allows for server-side enforcement of governance policies, such as blocking updates that introduce backward-inc

    Gobuf-clibuf-schema-registrygrpc
    View on GitHub↗11,211
  • carp-lang/carpcarp-lang avatar

    carp-lang/Carp

    5,815View on GitHub↗

    Carp is a statically typed Lisp compiler that compiles Lisp-like syntax directly to C source code, enabling seamless integration with existing C libraries and low-level system programming. It manages memory deterministically at compile time using ownership tracking and linear types, eliminating garbage collection pauses and runtime overhead while ensuring type safety through an inferred static type system. The language distinguishes itself through compile-time macro expansion and metaprogramming capabilities, allowing code generation and transformation before final binary output. It enforces

    Haskellfunctionalfunctional-programminggame-development
    View on GitHub↗5,815
  • focus-creative-games/lubanfocus-creative-games avatar

    focus-creative-games/luban

    4,458View on GitHub↗

    Luban is a game configuration toolchain designed to convert spreadsheet-based data into optimized binary formats and type-safe source code for multiple languages. It functions as a comprehensive suite for configuration validation, data serialization pipelines, and code generation to ensure data consistency across different platforms. The system features a multi-language code generator that produces strongly-typed data classes from schemas, eliminating the need for reflection. It includes a localization manager for exporting translated text and assets with locale-specific patching, and a seria

    C#cocos2d-xconfigcsv
    View on GitHub↗4,458
  • square/wiresquare avatar

    square/wire

    4,419View on GitHub↗

    Wire is a cross-platform code generator and implementation of gRPC and Protocol Buffers. It transforms schema definitions into type-safe native language bindings for Kotlin, Swift, and Java to ensure consistent data exchange and communication between distributed systems. The project provides specialized tools for protocol buffer schema management, including the ability to prune unused types and filter fields by version to reduce final binary sizes. It also handles namespace management and allows for the creation of custom schema handlers to execute user-defined logic during the compilation ph

    Kotlin
    View on GitHub↗4,419
  • liteos/liteosLiteOS avatar

    LiteOS/LiteOS

    4,905View on GitHub↗

    LiteOS is a lightweight real-time operating system kernel designed for constrained devices with limited memory and processing power. It provides a foundation for embedded IoT development, focusing on stable and predictable system resource management. The system implements a preemptive task scheduler and interrupt-driven resource management to ensure real-time responsiveness. It incorporates a tickless idle mechanism and optimized sleep-wake cycles to reduce power consumption in battery-powered hardware. The kernel includes capabilities for task synchronization via semaphores and static memor

    C
    View on GitHub↗4,905
  • koxudaxi/datamodel-code-generatorkoxudaxi avatar

    koxudaxi/datamodel-code-generator

    3,943View on GitHub↗

    This project is a command-line schema-to-code converter designed to transform diverse data specifications into type-safe Python data structures. It functions as a generator for Pydantic models, dataclasses, and typed dictionaries, enabling developers to maintain synchronization between evolving data contracts and application code. By parsing formats such as JSON Schema, OpenAPI, AsyncAPI, Protobuf, and Avro, the tool automates the creation of native classes that reflect the constraints and metadata defined in the source specifications. The generator distinguishes itself through a highly confi

    Pythoncode-generatorcsvdataclass
    View on GitHub↗3,943
  • m-labs/smoltcpm-labs avatar

    m-labs/smoltcp

    4,492View on GitHub↗

    smoltcp is a TCP/IP stack and network protocol implementation designed for resource-constrained environments and bare-metal hardware. It provides a set of socket interfaces for managing reliable TCP stream connections and connectionless UDP datagrams without relying on a standard library. The project utilizes a fixed memory layout and static memory allocation to manage network state and process packets without a dynamic memory allocator. It includes specialized capabilities for low-power wireless networks, such as header compression and fragmentation for 6LoWPAN. The stack covers the data li

    Rust
    View on GitHub↗4,492
  • grpc/grpc-nodegrpc avatar

    grpc/grpc-node

    4,833View on GitHub↗

    This project is a gRPC framework for Node.js used to implement high-performance remote procedure calls. It provides a client-server communication library that utilizes HTTP/2 for streaming, multiplexing, and binary framing, alongside a protocol buffers implementation for defining structured data and generating service stubs. The framework includes a toolchain to compile protocol buffer files into language-specific objects and supports the generation of static TypeScript type definitions to validate objects at runtime. The library covers distributed system networking and microservices communi

    TypeScript
    View on GitHub↗4,833
  • apple/swift-protobufapple avatar

    apple/swift-protobuf

    4,935View on GitHub↗

    This project is a Protocol Buffers Swift library and framework providing a runtime for serializing and deserializing structured data. It includes a code generator that transforms schema files into type-safe Swift structures and a binary serialization framework for converting data into compact streams. The library functions as a JSON data mapper, transforming messages into standard JSON representations to facilitate cross-platform data exchange. It utilizes a schema-driven approach to ensure consistent data modeling between Swift applications and services written in other languages. The frame

    Swift
    View on GitHub↗4,935
  • aarondl/sqlboileraarondl avatar

    aarondl/sqlboiler

    6,989View on GitHub↗

    sqlboiler is a database-first ORM generator for Go that analyzes an existing database schema to produce strongly typed structures and query helpers. It functions as a schema-driven code generator, transforming database tables and relationships into executable Go source code. The project distinguishes itself through a type-safe query builder that uses chainable modifiers to construct SQL statements, eliminating the need for raw string concatenation. It utilizes customizable text templates to generate source code, allowing for the aliasing of schema entities and the creation of custom templates

    Godatabasegogolang
    View on GitHub↗6,989
  • grpc/grpc-rustgrpc avatar

    grpc/grpc-rust

    12,338View on GitHub↗

    grpc-rust is a native gRPC framework for Rust designed for building high-performance remote procedure call clients and servers. It provides an asynchronous communication stack and a protocol buffers implementation for encoding, decoding, and generating type-safe code from service definitions. The project enables the implementation of unary and bi-directional data streaming over the HTTP/2 protocol. It includes specialized support for gRPC-Web integration, allowing browser-based clients to communicate with services through protocol translation. The infrastructure covers a broad range of distr

    Rustasyncgrpcproto
    View on GitHub↗12,338
  • ajv-validator/ajvajv-validator avatar

    ajv-validator/ajv

    14,733View on GitHub↗

    Ajv is a high-performance data validation framework that compiles JSON schemas into optimized, standalone JavaScript functions. By transforming declarative schema definitions into executable code, it eliminates runtime interpretation overhead and provides a secure, efficient way to enforce data integrity across both browser and server environments. The library distinguishes itself through its focus on performance and type safety. It employs advanced compilation techniques, including abstract syntax tree optimization and function caching, to ensure rapid validation. Beyond standard checks, it

    TypeScriptajvjson-schemavalidator
    View on GitHub↗14,733