Skip to content

foca/granola-schema

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Granola <3 JSON Schema Build Status RubyGem

Support for defining JSON schema for your Granola serializers.

Example

require "granola/schema"

class PersonSerializer < Granola::Serializer
  def self.schema
    {
      "type" => "object",
      "required" => ["name", "email"],
      "properties" => {
        "name" => { "type" => "string" },
        "email" => { "type" => "string" },
        "age" => { "type" => "integer" },
      }
    }
  end

  def data
    {
      "name" => object.name,
      "email" => object.email,
      "age" => object.age
    }
  end
end

serializer = PersonSerializer.new(person)
serializer.valid? #=> true

Install

gem install granola-schema

License

This project is shared under the MIT license. See the attached LICENSE file for details.

About

JSON Schema support for Granola serialisers

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published