ndjson
JsonDecoder for ndjson
Decision gist · record as of 2026-08-14
Yes, if you need ndjson support in a stable, mature codebase targeting Python 2.7 or 3.5–3.7 and do not require ongoing maintenance. The package is simple, dependency-free, and has no known vulnerabilities. No, if you require active maintenance, support for modern Python versions, or need assurance of future compatibility—consider alternatives or vendor the code directly.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- No runtime dependencies and a pure-Python wheel make installation frictionless.
- However, the package is abandoned—last release was 2020-02-25 and last commit 2022-12-26—so no maintenance or security updates should be expected.
License · maintenance · safety
GNU General Public License v3 (copyleft) — Licensed under GNU General Public License v3 (copyleft). Any derivative work or modification must be distributed under the same license; proprietary or closed-source projects should review compatibility before use.
last release 2020-02-25 (2362 days) · last repo commit 2022-12-26 · 69 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 1,702,710 downloads/mo, #3,641 on PyPI
Alternatives
Verify before relying
import ndjson
# Load from file
with open('data.ndjson') as f:
data = ndjson.load(f)
# Convert to/from text
text = ndjson.dumps(data)
data = ndjson.loads(text)- Whether the package works reliably with modern Python versions (classifiers list only up to 3.7; requires_python is unspecified)
- Whether there are known incompatibilities or edge cases in ndjson parsing that the fact sheet does not surface
What it is and what it does
ndjson is a lightweight, dependency-free library for reading and writing JSON Lines (newline-delimited JSON) files. It mirrors the familiar interface of Python's built-in json and pickle modules, offering both high-level functions (load, loads, dump, dumps) and lower-level streaming classes (reader, writer, JSONEncoder, JSONDecoder) for flexible integration with other libraries like requests.
The package is small, has no external dependencies, and includes tests. However, it has been abandoned since early 2020 with no active maintenance, so it will not receive bug fixes or updates for compatibility with newer Python versions or JSON specifications.
Use it for
- Parse streaming JSON Lines data from APIs or log files without loading entire datasets into memory
- Convert between ndjson text format and Python objects using a json-like interface
- Integrate ndjson parsing into requests-based HTTP clients via the JSONDecoder class
- Write Python objects to ndjson files with csv-like reader/writer classes for batch processing
- Handle newline-delimited JSON in data pipelines where each line is a separate JSON object
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need ndjson support in a stable, mature codebase targeting Python 2.7 or 3.5–3.7 and do not require ongoing maintenance.
The package is simple, dependency-free, and has no known vulnerabilities. No, if you require active maintenance, support for modern Python versions, or need assurance of future compatibility—consider alternatives or vendor the code directly.
Install
ndjson on PyPI
Before you install
No runtime dependencies and a pure-Python wheel make installation frictionless. However, the package is abandoned—last release was 2020-02-25 and last commit 2022-12-26—so no maintenance or security updates should be expected.
License in practice
Licensed under GNU General Public License v3 (copyleft). Any derivative work or modification must be distributed under the same license; proprietary or closed-source projects should review compatibility before use.
Quickstart
import ndjson
# Load from file
with open('data.ndjson') as f:
data = ndjson.load(f)
# Convert to/from text
text = ndjson.dumps(data)
data = ndjson.loads(text)
Verify before relying
- Whether the package works reliably with modern Python versions (classifiers list only up to 3.7; requires_python is unspecified)
- Whether there are known incompatibilities or edge cases in ndjson parsing that the fact sheet does not surface
Package facts
| License | GNU General Public License v3 copyleft |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Abandoned 2,362 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,702,710 / month, #3,641 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 2 - Pre-AlphaIntended Audience :: DevelopersLicense :: OSI Approved :: GNU General Public License v3 (GPLv3)Natural Language :: EnglishProgramming Language :: Python :: 2Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7 |
Evidence: ndjson-0.3.1-py2.py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “ndjson parser”
- ndjsonProvides a familiar JSON Lines (ndjson) parser and writer with an API…
- jsonlinesSimplifies reading and writing jsonlines (newline-delimited JSON) and…
- tinybird-python-sdkIngest NDJSON data into Tinybird Data Sources and send requests to…
Give your agent the search over MCP, or paste the wish link into any chat.
More Text Processing packages
A drop-in replacement for Python's standard `re` module that adds advanced regex features like nested sets, fuzzy matching, lookaround in conditionals, and full Unicode case-folding while maintaining backward compatibility.
pyparsing provides a library for building text parsers directly in Python code using composable grammar classes, handling quoted strings, whitespace variation, and embedded comments without regex or lex/yacc.
Install it if you need to parse text or define grammars programmatically.
fonttools manipulates font files in multiple formats (TrueType, OpenType, AFM, Type 1, Mac-specific) and includes TTX, a tool to convert fonts to and from XML text format.
Install it if you need to read, write, or manipulate fonts programmatically or via the TTX command-line tool.
Docutils converts plaintext documentation in reStructuredText format into multiple output formats including HTML, XML, and LaTeX using a modular processing system.
RapidFuzz provides fast fuzzy string matching using Levenshtein Distance and related metrics, implemented mostly in C++ with Python bindings for rapid similarity scoring and approximate string matching.
Install it if you need fuzzy string matching; it's a solid replacement for FuzzyWuzzy with better licensing and performance.
tinycss2 parses CSS strings into token and block objects, and generates CSS strings from those objects, following the CSS Syntax Level 3 specification without enforcing specific properties or values.
Install it if your project requires CSS tokenization or syntax manipulation.
See also edn-format · jsonlines · jsonstreams · json-stream · json5 · numpyencoder · file-read-backwards · jsonconversion · ijson · dirtyjson