Project

playset

0.0
The project is in a healthy, maintained state
Compose action_figure actions into reviewable OpenAPI documents: document DSL, compile, conformance assertions, coverage, and route verification
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies
 Project Readme

Playset

OpenAPI document DSL for action_figure.

Playset composes action_figure actions into a reviewable OpenAPI document — the document is the first artifact, and everything else grows out of it:

  • Document DSL — author paths, operations, and named schemas in Ruby; compile to openapi.yaml
  • Composition — inline operations are designs; composing an action class into the document is the claim "this is live"
  • Conformance assertions — validate real responses against the document's schemas in your tests
  • Coverage & route verification — every operation accounted for, every composed operation routed

Status: placeholder release reserving the gem name. The design lives in the action_figure project; nothing here is usable yet.

Installation

bundle add playset

Usage

module AcmeApi
  include Playset[:jsend]

  info title: "Acme Public API", version: "1.0.0"

  Project = Schema.define do
    integer :id
    string  :name, max_length: 120
  end

  path "/projects" do
    post createProject: Projects::CreateAction do
      summary "Create a project"
      tags :projects
      response 201, Project
    end
  end
end

(Aspirational — see status above.)

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rake test to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/urug/playset.

License

The gem is available as open source under the terms of the MIT License.