json_serializable 6.12.0 copy "json_serializable: ^6.12.0" to clipboard
json_serializable: ^6.12.0 copied to clipboard

Automatically generate code for converting to and from JSON by annotating Dart classes.

example/example.dart

// Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

import 'package:json_annotation/json_annotation.dart';

part 'example.g.dart';

@JsonSerializable(createJsonSchema: true)
class Person {
  final String firstName, lastName;

  final DateTime? dateOfBirth;

  Person({required this.firstName, required this.lastName, this.dateOfBirth});

  /// Connect the generated [_$PersonFromJson] function to the `fromJson`
  /// factory.
  factory Person.fromJson(Map<String, dynamic> json) => _$PersonFromJson(json);

  /// Connect the generated [_$PersonToJson] function to the `toJson` method.
  Map<String, dynamic> toJson() => _$PersonToJson(this);

  /// The JSON Schema for this class.
  static const jsonSchema = _$PersonJsonSchema;
}
3.9k
likes
150
points
1.94M
downloads

Publisher

verified publishergoogle.dev

Weekly Downloads

Automatically generate code for converting to and from JSON by annotating Dart classes.

Repository (GitHub)
View/report issues

Topics

#json #build-runner #json-serializable #codegen

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

analyzer, async, build, build_config, dart_style, json_annotation, json_schema, meta, path, pub_semver, pubspec_parse, source_gen, source_helper

More

Packages that depend on json_serializable