Tiny and simple ndjson parser library for Dart. No external dependencies.
dependencies:
ndjson: ^<latest-version>Import:
import'package:ndjson/ndjson.dart';The usage is pretty straightforward:
import'package:ndjson/ndjson.dart';
// Your ndjson stream.finalStream<String|List<int>> ndjsonStream = ...
// A new stream that will parse all chunks and emit events // for each new json object (not ndjson chunks).finalStream<NdjsonLine> parsedNdjson = ndjsonStream.parseNdjson();
// Using converter functions:finalStream<Dummy> ndjson = ndjsonSource.parseNdjsonWithConverter<Dummy>(
whenMap:Dummy.fromJson,
);Supported ndjson types are:
Stream<List<int>>.Stream<Uint8List>.Stream<String>.
Any list-like ndjson source can be converted to Stream using:
Stream.fromIterable(ndjsonList);You must be aware that using ndjson as list is the same as a regular json (you lose all ndjson performance benefits).