awesome-repositories.com
Blog
awesome-repositories.com

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
edn-format avatar

edn-format/edn

0
View on GitHub↗
2,760 stars·100 forks·3 views

Edn

Extensible Data Notation is a language-agnostic text format designed for the reliable exchange of structured data and immutable values across diverse programming environments and distributed systems. It provides a standardized way to organize information into hierarchies using collections such as maps, sets, and vectors, ensuring consistent data recognition through the use of symbolic identifiers and keywords.

The format distinguishes itself through its support for extensible tagged elements, which allow developers to register custom handlers to interpret domain-specific data structures beyond standard primitives. This extensibility, combined with the ability to annotate data streams with comments or selectively parse specific segments, enables the format to serve as a flexible tool for both complex data interchange and structured configuration management.

Features

  • Data Serialization Formats - Provides a language-agnostic text format for representing structured data and immutable values.
  • Custom Data Types - Provides a registration mechanism for custom handlers to interpret domain-specific data types.
  • Language-Neutral Data Serialization - Represents complex data structures as text to ensure reliable information exchange between different programming languages.
  • Collection Data Structures - Organizes data into ordered lists, vectors, maps, and sets to represent complex hierarchies.
  • Data Format Extensions - Supports custom tagged elements and domain-specific types to extend standard primitives.
  • Data Interchange Standards - Standardizes the organization of collections into hierarchies for reliable data exchange between systems.
  • Parser Tag Extensions - Allows extending the parser to recognize custom tagged elements and reconstruct domain-specific objects.
  • Complex Data Serialization - Supports recursive serialization of complex information hierarchies into nested text structures.
  • Data Type Definitions - Extends standard formats with specialized handlers to interpret domain-specific structures.
  • Primitive Type Encoding - Provides standardized encoding for basic primitives like null, booleans, and numbers.
  • Symbolic Identifiers - Uses keywords and symbols as immutable tokens for consistent cross-platform data identification.
  • Structured Data Format Encoders - Encodes structured data into language-agnostic text strings for reliable exchange between distributed systems.
  • Human-Readable Configuration Formats - Organizes application settings into readable formats that support comments and selective data inclusion.
  • Data Container Identification - Assigns symbols and keywords to represent unique identifiers for consistent data recognition.
  • Data Exchange Standards - Standardizes communication of immutable values and unique identifiers across diverse software architectures.
  • Immutable Data Storage - Provides a standardized format for representing immutable values and structured data across distributed systems.

Star history

Star history chart for edn-format/ednStar history chart for edn-format/edn

AI search

Explore more awesome repositories

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

Start searching with AI

Curated searches featuring Edn

Hand-picked collections where Edn appears.
  • Data interchange formats

Open-source alternatives to Edn

Similar open-source projects, ranked by how many features they share with Edn.
  • cognitect/transit-formatcognitect avatar

    cognitect/transit-format

    1,918View on GitHub↗

    Transit is a language-agnostic data interchange format designed for serializing complex data structures between heterogeneous software systems. It provides a standardized protocol that preserves semantic type information during the exchange process, ensuring that data remains consistent when moved across different programming environments. The format distinguishes itself by supporting multiple transport layers, including JSON and MessagePack, while utilizing a caching stream mechanism to reduce payload size by replacing repetitive keys and symbols with short integer references. It features an

    Clojure
    View on GitHub↗1,918
  • ron-rs/ronron-rs avatar

    ron-rs/ron

    3,940View on GitHub↗

    RON is a serializer and deserializer for a strongly typed, human-readable data exchange format. It mirrors Rust language syntax to represent complex data structures and configurations, serving as an alternative to formats like JSON and TOML. The format preserves native Rust type idioms, including enums, structs, tuples, and ranges. It supports inline comments and specialized numeric bases, allowing for the creation of typed configuration files and human-editable data storage. The library provides source-mapped error reporting to track character coordinates during syntax failures and includes

    Rustconfigsdata-formatrust
    View on GitHub↗3,940
  • hazelcast/hazelcasthazelcast avatar

    hazelcast/hazelcast

    6,570View on GitHub↗

    Hazelcast is a distributed data platform that combines an in-memory data grid with a stream processing engine to support real-time analytics and event-driven applications. It functions as a partitioned, distributed key-value store that replicates data across cluster nodes to provide low-latency access and high availability. The platform also serves as a distributed SQL query engine, allowing users to execute standard SQL statements against both in-memory datasets and external data sources. What distinguishes Hazelcast is its use of a distributed consensus subsystem to maintain strongly consis

    Javabig-datacachingdata-in-motion
    View on GitHub↗6,570
  • 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
See all 30 alternatives to Edn→

Frequently asked questions

What does edn-format/edn do?

Extensible Data Notation is a language-agnostic text format designed for the reliable exchange of structured data and immutable values across diverse programming environments and distributed systems. It provides a standardized way to organize information into hierarchies using collections such as maps, sets, and vectors, ensuring consistent data recognition through the use of symbolic identifiers and keywords.

What are the main features of edn-format/edn?

The main features of edn-format/edn are: Data Serialization Formats, Custom Data Types, Language-Neutral Data Serialization, Collection Data Structures, Data Format Extensions, Data Interchange Standards, Parser Tag Extensions, Complex Data Serialization.

What are some open-source alternatives to edn-format/edn?

Open-source alternatives to edn-format/edn include: cognitect/transit-format — Transit is a language-agnostic data interchange format designed for serializing complex data structures between… ron-rs/ron — RON is a serializer and deserializer for a strongly typed, human-readable data exchange format. It mirrors Rust… hazelcast/hazelcast — Hazelcast is a distributed data platform that combines an in-memory data grid with a stream processing engine to… apache/thrift — Thrift is a cross-language remote procedure call framework and data serialization protocol. It provides an interface… google/protobuf — Protocol Buffers is a binary serialization framework used to encode structured information into compact payloads to… snailclimb/guide-rpc-framework — This is a remote procedure call framework built on Netty for asynchronous communication between distributed services.…