# bblanchon/ArduinoJson

📟 JSON library for Arduino and embedded C++. Simple and efficient.

Repository: https://github.com/bblanchon/ArduinoJson
Canonical: https://ross.abutalabs.com/products/arduinojson
Homepage: https://arduinojson.org
Language: C++
License: MIT
License Family: permissive
Topics: arduino, c-plus-plus, iot, embedded, arduino-library, json, esp8266, esp32
Last push: 2026-08-15T10:39:44+00:00

## Health v2 (maintenance only)
Score: 85/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 97, release rhythm 60, longevity 100
- inputs: {"age_days": 4618, "days_push": 18, "days_rel": 184, "gap_med": 40, "n_releases_24m": 12}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 7206, forks 1168 (observed 2026-08-28T04:09:56.618979+00:00)

## What it is
ArduinoJson is a C++ JSON library designed for Arduino and embedded/IoT platforms, providing efficient JSON and MessagePack serialization and deserialization with low memory footprint. It supports input filtering, stream parsing, custom allocators, and works across many boards including ESP8266 and ESP32.

## Use cases
- parse JSON responses from a weather API on an ESP32
- serialize sensor readings to JSON on an Arduino
- decode JSON from a web service on ESP8266
- convert between JSON and MessagePack on a microcontroller
- parse only selected fields from a large JSON document to save RAM
- build a JSON payload for an IoT device to send over MQTT

## When to choose
- you need JSON parsing or generation on memory-constrained microcontrollers
- you want a fast, small alternative to Arduino_JSON
- you need MessagePack support alongside JSON in embedded C++
- you work with Arduino, ESP32, ESP8266, or PlatformIO projects

## When to avoid
- you need JSON handling in desktop or server C++ where full-featured libraries like nlohmann/ fit better
- your JSON documents are very large and cannot fit in microcontroller RAM even with filtering
- you need JSON Schema validation or JSONPath queries

## Facets
- artifact type: library
- maturity: stable
- function: serialization, parser
- domain: embedded-systems, iot, developer-tools
- platform: cpp, embedded, iot, cross-platform
- tags: arduino, esp8266, esp32, messagepack, -serialization, -deserialization, embedded-c-plus-plus

## Member repositories
- bblanchon/ArduinoJson (main) score 85

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:09:56.618979+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-29T17:39:51.079667+00:00, confidence not recorded.
  - readme: https://github.com/bblanchon/ArduinoJson (fetched 2026-08-28T04:09:56.618979+00:00, sha 9f76aa673c80)
  - homepage: https://arduinojson.org (fetched 2026-08-29T08:35:00.282922+00:00, sha ea660bf680a0)
  - site_page: https://arduinojson.org/about (fetched 2026-08-29T08:35:00.294182+00:00, sha 576aaece9179)
  - site_page: https://arduinojson.org/v7 (fetched 2026-08-29T08:35:00.292544+00:00, sha a86becf758dd)
- Data as of 2026-08-30T08:39:29.467469+00:00.
