# WebReflection/flatted

A fast and minimal circular JSON parser.

Repository: https://github.com/WebReflection/flatted
Canonical: https://ross.abutalabs.com/products/flatted
Language: JavaScript
License: ISC
License Family: permissive
Last push: 2026-07-30T09:52:58+00:00

## Health v2 (maintenance only)
Score: 75/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 95, release rhythm 35, longevity 100
- inputs: {"age_days": 3051, "days_push": 34, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1155, forks 98 (observed 2026-08-28T04:03:47.930986+00:00)

## What it is
Flatted is a tiny (0.5K) and fast JavaScript library for serializing and parsing JSON data that contains circular references, with ports for PHP, Python, and Go. It provides a drop-in parse/stringify API compatible with JSON, plus toJSON/fromJSON helpers for implicit round-tripping.

## Use cases
- serialize objects with circular references to JSON
- parse JSON strings containing recursive structures
- persist cyclic data structures like linked lists or graphs
- round-trip recursive Maps through JSON.stringify
- share circular-structure serialization across JS, Python, Go, and PHP

## When to choose
- you need to serialize data with circular references in a JSON-compatible format
- you want a minimal, dependency-free library with a tiny footprint
- you need consistent circular JSON handling across multiple languages

## When to avoid
- you need to serialize non-JSON types like Dates, Maps, or class instances natively
- you must interoperate with standard JSON.parse/JSON.stringify on the same strings
- you need a general structured-clone solution rather than JSON-only values

## Facets
- artifact type: library
- maturity: stable
- function: serialization, parser
- domain: developer-tools, web-development
- platform: browser, cross-platform, python, go, php
- tags: circular-json, json-serialization, circular-references, esm, lightweight, data-engineering, nodejs

## Member repositories
- WebReflection/flatted (main) score 75

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:03:47.930986+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T06:32:11.562736+00:00, confidence not recorded.
  - readme: https://github.com/WebReflection/flatted (fetched 2026-08-28T04:03:47.930986+00:00, sha 8145b9e39d59)
  - registry_npm: https://registry.npmjs.org/flatted (fetched 2026-08-29T12:37:44.245932+00:00, sha 274f36f61529)
- Data as of 2026-08-30T08:39:29.467469+00:00.
