Skip to content

vincent-petithory/dispel

Repository files navigation

Dispel Build Status

This project aims to generate server code for REST APIs written in Go, based on a JSON Schema describing the API.

Though already usable, this is still a work in progress and APIs are unstable. This will be updated in time when things stabilize.

Package documentation: GoDoc

Command documentation: GoDoc

JSON Schema supported/unsupported features

  • fetching referenced $schema NOT supported
  • absolute references
  • reference to property of instance schema

TODO

  • Ignore resources with MediaType not application/json
  • Add var type to route param
  • Preserve order of json object keys in structs
  • allow customize generate names. Possible solutions: text/template or program through stdin, stdout?
  • generate blank project to serve as godoc documentation for interfaces and default implementations
  • support format="date-time" => time.Time
  • (maybe) support nullable types
  • support bare type="object" => map[string]interface{}

About

Dispel generates REST APIs Go server code from a JSON Hyper-Schema

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages