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 fatih/structs

Projects sharing features with Structs

30 open-source projects similar to fatih/structs, 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.

  • goccy/go-yamlgoccy avatar

    goccy/go-yaml

    2,189View on GitHub↗

    This library is a Go-based utility for encoding and decoding YAML data into native language structures. It facilitates the transformation of complex objects into human-readable text formats and provides mechanisms for mapping data fields through reflection and custom type handling. The library distinguishes itself by maintaining an intermediate abstract syntax tree, which allows for precise document modifications and the preservation of comments during serialization. It includes a path-based query engine that enables users to navigate, filter, and update document hierarchies without manual it

    Gogogolanggolang-library
    View on GitHub↗2,189
  • jinzhu/copierjinzhu avatar

    jinzhu/copier

    6,172View on GitHub↗

    Copier is a Go library that deep copies data between structs, maps, and slices using reflection-based field mapping and struct tag controls. At its core, it automatically transfers values by matching source and destination fields by name, type, and methods, creating fully independent copies of nested data structures to prevent shared references and unintended mutations. The library distinguishes itself through tag-driven copy rules that give developers fine-grained control over the copying process. Struct tags can enforce mandatory field copying, exclude specific fields from transfer, or map

    Gocopygogolang
    View on GitHub↗6,172
  • toml-lang/tomltoml-lang avatar

    toml-lang/toml

    20,525View on GitHub↗

    TOML is a configuration file format designed for human readability and unambiguous mapping to hash tables. It serves as a standardized language for structured data, enabling consistent parsing and data exchange across diverse programming environments. The format distinguishes itself through a strict type-system specification that ensures data is interpreted identically regardless of the implementation. It utilizes a line-oriented lexical structure that supports both hierarchical organization through bracketed sections and compact inline embedding for nested objects. This approach allows for t

    View on GitHub↗20,525

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
  • arktypeio/arktypearktypeio avatar

    arktypeio/arktype

    7,780View on GitHub↗

    Arktype is a TypeScript runtime validation library and schema orchestrator. It synchronizes TypeScript types with runtime data validation, allowing users to define type-safe schemas that ensure unknown data adheres to specific structures during application execution. The project distinguishes itself by using set-theory type analysis to determine intersections and subtype compatibility, alongside JIT-compiled validation functions for optimized performance. It supports advanced type modeling through branded type constraints, recursive alias resolution, and the ability to generate runtime valida

    TypeScriptjavascriptparsingruntime-typechecking
    View on GitHub↗7,780
  • facebook/prop-typesfacebook avatar

    facebook/prop-types

    4,452View on GitHub↗

    prop-types is a JavaScript object validator and runtime type checker. It serves as a development tool for verifying that object properties match predefined specifications, primarily used to ensure that data passed into React components aligns with expected types. The utility detects data inconsistencies by logging warnings to the console when mismatches occur, rather than throwing exceptions. It employs a stateful warning cache to prevent duplicate logs and restricts validation logic to non-production environments to avoid performance overhead in released builds. The project covers data vali

    JavaScript
    View on GitHub↗4,452
  • orhanobut/loggerorhanobut avatar

    orhanobut/logger

    13,849View on GitHub↗

    This Android logging library is a toolkit for printing formatted, stylized, and filtered debug messages to the Android console and local files. It functions as a console log styler, a log file writer, and a formatter for converting complex data into human-readable text. The library provides specific utilities for customizing the visual appearance of logs by tracking thread information and call depth. It includes capabilities for converting JSON, XML, and collection data into readable formats and saving console entries to local files for offline analysis. The system covers broader log managem

    Java
    View on GitHub↗13,849
  • mitchellh/mapstructuremitchellh avatar

    mitchellh/mapstructure

    8,033View on GitHub↗

    mapstructure is a reflection-based library for the bidirectional encoding and decoding of generic map data into native typed Go structures. It functions as a tool for transforming loosely typed map values into specific structs and encoding those structs back into maps. The library utilizes Go reflection to map generic data keys to struct fields during runtime. It supports the transformation of untyped data from dynamic sources or configuration files into type-safe native structures. The mapping process includes recursive traversal of nested maps and slices, as well as the use of struct tags

    Go
    View on GitHub↗8,033
  • glideapps/quicktypeglideapps avatar

    glideapps/quicktype

    13,767View on GitHub↗

    Quicktype is a multi-language serialization tool and type generator. It converts JSON samples, JSON Schema definitions, and GraphQL schemas into strongly typed data structures and serialization logic across multiple programming languages. The system automates the data serialization workflow by generating boilerplate code to parse and serialize data. It transforms structured input definitions into executable code, providing the necessary encoders and decoders to move data between raw formats and typed objects.

    TypeScriptcpluspluscsharpelm
    View on GitHub↗13,767
  • open-circle/valibotopen-circle avatar

    open-circle/valibot

    8,769View on GitHub↗

    Valibot is a modular, type-safe schema library for validating and parsing structural data in TypeScript environments.

    TypeScriptbundle-sizemodularparsing
    View on GitHub↗8,769
  • json-iterator/gojson-iterator avatar

    json-iterator/go

    13,891View on GitHub↗

    This project is a high-performance JSON library for Go, serving as a replacement for the standard encoding/json package. It provides a serialization engine for encoding and decoding data structures, alongside a schemaless parser for extracting specific values from JSON blobs using paths. The library distinguishes itself through a focus on reducing CPU and memory overhead. It implements a high-performance encoder that utilizes buffer reuse and reduced float precision to increase data throughput. Broad capability areas include data serialization, high-performance JSON processing, and schema-le

    Godeserializationgogolang
    View on GitHub↗13,891
  • antonmedv/exprantonmedv avatar

    antonmedv/expr

    7,905View on GitHub↗

    Expr is a high-performance expression evaluation engine and language for Go applications. It functions as a dynamic rule engine that parses and executes custom logic and data validations at runtime without requiring the application to be recompiled. The system utilizes a sandboxed logic executor to run expressions without side effects. It ensures program termination by employing instruction-level loop detection to prevent infinite loops and isolates the evaluation process from the host system. The engine employs a bytecode-based virtual machine and abstract syntax tree analysis to achieve ex

    Go
    View on GitHub↗7,905
  • typestack/routing-controllerstypestack avatar

    typestack/routing-controllers

    4,508View on GitHub↗

    routing-controllers is a declarative API router and web framework controller for TypeScript. It provides a system for defining HTTP routes and request handling logic using class-based decorators and metadata to organize API endpoints into a structured architecture. The project utilizes adapter-based server integration to decouple routing logic from the underlying web framework, providing specific integrations for Express and Koa. It features a reflection-based type transformation system that validates and transforms incoming request parameters into typed class instances. The capability surfa

    TypeScriptcontrollersexpress-routerframework
    View on GitHub↗4,508
  • gcanti/io-tsgcanti avatar

    gcanti/io-ts

    6,813View on GitHub↗

    io-ts is a TypeScript runtime validation library that provides a composable codec system for decoding and encoding data at the boundaries of an application. It defines data schemas using structural types, where the shape of data determines its validity rather than nominal names, and produces runtime type guards from those definitions for efficient validation checks. The library is built around bidirectional codec mappings that combine decoding, encoding, and type checking into single reusable units. It supports a composable decoder pipeline where small validation steps can be chained together

    TypeScriptinferenceruntimetypes
    View on GitHub↗6,813
  • go-yaml/yamlgo-yaml avatar

    go-yaml/yaml

    7,023View on GitHub↗

    This library is a YAML encoder and decoder for native Go data structures. It provides the tools necessary to transform internal data into YAML formatted text and convert YAML input streams back into structured data. The parser includes built-in protections against resource exhaustion attacks by enforcing limits on document depth and alias resolution. It also ensures deterministic output by employing consistent key sorting for maps. The project covers serialization and deserialization workflows, including struct mapping and custom marshaling interfaces. It also handles input encoding detectio

    Go
    View on GitHub↗7,023
  • thoas/go-funkthoas avatar

    thoas/go-funk

    4,939View on GitHub↗

    go-funk is a functional programming library for Go that provides a set of helper functions to transform and query slices and maps. It enables a declarative coding style for collection manipulation and data transformation, reducing the need for repetitive manual loops. The library implements higher-order functions for common operations, including mapping, filtering, and searching through data structures using predicates and callbacks. It includes utilities for detecting element existence and finding common elements between collections. These capabilities are supported through generic-based ty

    Go
    View on GitHub↗4,939
  • 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
  • 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
  • samchon/typiasamchon avatar

    samchon/typia

    5,837View on GitHub↗

    Typia is a compile-time code generator that transforms TypeScript type annotations into runtime validation, serialization, and schema functions without requiring decorators or separate schema files. It generates optimized validation and serialization code during TypeScript compilation, producing dedicated functions for each type that eliminate runtime schema objects for faster execution. The project extends this core capability into several integrated areas. It generates fully typed client SDKs from NestJS controller source code, keeping server and client types synchronized automatically. It

    Go
    View on GitHub↗5,837
  • apache/thriftapache avatar

    apache/thrift

    10,933View on GitHub↗

    Thrift is a cross-language remote procedure call framework and data serialization protocol. It provides an interface definition language to specify data types and service interfaces in a neutral format, enabling the automated generation of client and server code across multiple programming languages. The project functions as a polyglot service communicator using a layered software stack to ensure interoperable communication. It focuses on implementing cross-language remote procedure calls and transforming complex data structures into standardized formats for efficient network transport. The

    C++
    View on GitHub↗10,933
  • ts-essentials/ts-essentialsts-essentials avatar

    ts-essentials/ts-essentials

    4,068View on GitHub↗

    ts-essentials is a comprehensive toolkit of utility types and libraries for TypeScript, providing advanced primitives for recursive structural transformations, runtime assertions, and type guards. It serves as a utility library for performing complex type-level programming to ensure stronger type safety and reduce boilerplate. The project distinguishes itself through a specialized set of tools for deep object manipulation, such as recursively applying read-only or optional modifiers across nested hierarchies. It also provides a dedicated set of strict type constraints to ensure data structure

    TypeScriptessentialstoolboxtype-level-programming
    View on GitHub↗4,068
  • mobxjs/mobx-state-treemobxjs avatar

    mobxjs/mobx-state-tree

    7,050View on GitHub↗

    MobX State Tree is a structured, tree-based state management library for JavaScript applications that combines typed model definitions with reactive snapshots and patch-based change tracking. It provides a reactive state container with runtime and compile-time type safety, where application state is defined as a tree of typed models with collocated actions, computed views, and lifecycle hooks for predictable state mutations. The library is built around an action-centric mutation model that encapsulates all state changes within named functions that directly modify the tree, supported by genera

    TypeScripthacktoberfestmobxmobx-state-tree
    View on GitHub↗7,050
  • fasterxml/jackson-databindFasterXML avatar

    FasterXML/jackson-databind

    3,729View on GitHub↗

    Jackson-databind is a Java serialization framework and JSON data binding library used to convert Java objects to JSON and vice versa. It functions as a JSON streaming API that generates and parses content as a sequence of tokens, and as a hierarchical data tree mapper that reads data into a node structure for dynamic modification without predefined classes. The project provides a structured mapping process to bind data to objects, allowing for the transformation of complex Java objects into data formats and the reconstruction of objects from those formats. It supports custom data format mappi

    Javahacktoberfestjacksonjackson-databind
    View on GitHub↗3,729
  • toon-format/toontoon-format avatar

    toon-format/toon

    24,642View on GitHub↗

    Toon is a data serialization library and toolkit designed to convert complex objects into compact, human-readable formats optimized for large language models. By focusing on token efficiency, the library minimizes the context window footprint of structured data through techniques like key folding and tabular layout optimization. It provides a streaming-capable processor that handles the encoding and decoding of hierarchical data while maintaining structural integrity. The project distinguishes itself through its path-aware transformation pipeline and configurable serialization logic, which al

    TypeScriptdata-formatllmserialization
    View on GitHub↗24,642
  • facebookarchive/injectfacebookarchive avatar

    facebookarchive/inject

    1,408View on GitHub↗

    Inject is a dependency injection framework for Go that automates the assembly of complex object graphs. By leveraging runtime reflection, the library dynamically inspects object structures to resolve and populate required dependencies, decoupling component initialization from business logic. The framework manages object lifecycles through both singleton and factory-based provisioning. It maintains a central registry to share singletons across an application for consistent state, while also supporting the creation of unique, private instances to isolate state between different components. To

    Go
    View on GitHub↗1,408
  • codex-team/editor.jscodex-team avatar

    codex-team/editor.js

    31,528View on GitHub↗

    Editor.js is a block-style rich text editor that organizes document content into an ordered array of independent, modular data objects. By replacing monolithic HTML strings with a structured, machine-readable JSON format, it decouples the content creation process from the final presentation layer. The editor functions as a browser-based orchestration layer that manages user input, focus, and state synchronization across individual blocks. Its architecture is built on a plugin-driven system where external modules register themselves to handle specific content types, providing custom rendering

    TypeScriptcodex-editoreditorjavascript
    View on GitHub↗31,528
  • 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
  • goccy/go-jsongoccy avatar

    goccy/go-json

    3,687View on GitHub↗

    go-json is a high-performance JSON serialization library for Go that serves as an encoder and decoder replacement for the standard library. It provides tools to convert native data structures to and from JSON format with optimized processing speeds. The library includes a conditional serializer for filtering specific data structure fields during the encoding process and a colorizer to produce color-coded JSON strings for human readability. The project supports context-aware marshaling to trigger specific logic during the serialization of complex data types.

    Gogogolanggolang-library
    View on GitHub↗3,687
  • go-pay/gopaygo-pay avatar

    go-pay/gopay

    5,632View on GitHub↗

    GoPay is a Go SDK that aggregates multiple Chinese and international payment gateways behind a single, unified interface. It provides a consistent API for creating payment orders, processing refunds, handling asynchronous gateway callbacks, and querying transaction statuses across providers like Alipay and WeChat Pay. The SDK abstracts away the differences between individual payment gateways through a gateway-agnostic interface, with built-in callback signature verification, error-code normalization, and request-response serialization. It includes dedicated client factories for each payment p

    Goalipayallinpayapple
    View on GitHub↗5,632
  • microsoft/pomlmicrosoft avatar

    microsoft/poml

    4,853View on GitHub↗

    Poml is a prompt management framework and templating engine designed for authoring, versioning, and rendering structured prompts for large language models. It uses a semantic markup language to organize prompts into reusable templates, combining them with dynamic context and data to generate formatted inputs. The system distinguishes itself by decoupling core prompt logic from final presentation through a stylesheet-based approach. It provides a dedicated JSON schema output generator to enforce strict, machine-parsable model responses and a configuration interface for managing function tool s

    TypeScriptllmmarkup-languageprompt
    View on GitHub↗4,853
  • restsharp/restsharprestsharp avatar

    restsharp/RestSharp

    9,826View on GitHub↗

    RestSharp is a .NET HTTP client library designed for interacting with RESTful web services. It provides a high-level request wrapper and a dedicated REST API client to manage endpoints, headers, and query parameters. The library includes a serialization mechanism that automatically converts objects to and from JSON or XML formats for API payloads. It also features a system for managing API credentials and security tokens to ensure authorized access to protected remote resources. The toolkit covers broad capabilities for external web service integration, including generic type-based deseriali

    C#
    View on GitHub↗9,826