Find a file
2023-02-24 17:01:53 +01:00
cmd/jsonschemagen Consistently use json.RawMessage 2023-02-24 17:01:53 +01:00
go.mod Initial commit 2022-10-06 09:26:45 +02:00
go.sum Initial commit 2022-10-06 09:26:45 +02:00
LICENSE Initial commit 2022-10-06 09:26:45 +02:00
README.md readme: add links to mailing list and IRC 2023-02-16 16:31:30 +01:00
schema.go Handle arrays in schema type 2022-10-10 19:17:30 +02:00

go-jsonschema

A JSON schema code generator for Go.

JSON schema draft 2020-12 is supported.

Usage

jsonschemagen -s <schema> -o <output>

One Go type per definition will be generated.

  • int64 is used for "type": "integer".
  • json.Number is used for "type": "number".
  • Go structs are generated for objects with "additionalProperties": false.
  • json.RawMessage is used when a value can have multiple types. Helpers are generated for allOf, anyOf, oneOf, then, else and dependantSchemas which are references.

Contributing

Report bugs and send patches to the mailing list. Discuss in #emersion on Libera Chat.

License

MIT