All Projects → swagger-api → rails-petstore

swagger-api / rails-petstore

Licence: other
No description, website, or topics provided.

Programming Languages

ruby
36898 projects - #4 most used programming language
HTML
75241 projects
javascript
184084 projects - #8 most used programming language
CSS
56736 projects

Swagger Sample App

Overview

This is a rails project to build a stand-alone server which implements the Swagger spec. You can find out more about both the spec and the framework at http://swagger.io. There is an online version of this server at http://petstore.swagger.io/api/api-docs

This project is using a fork of grape-swagger, generously written by Tim Vandecasteele. Once the changes to make it swagger-1.2 compatible are merged, the project will be updated to use that. Also many thanks to Kyle Ginavan and Craig Cottingham for putting this sample together, and updating the grape-swagger gem.

To run

To run the server, run this task:

bundle update
rake db:migrate
rails s

Note if you have trouble with bundle update, please make sure you have postgres installed--rails is expecting it, even though it's not using the database at all.

This will start rails on port 3000.

Testing the server

Once started, you can navigate to http://localhost:3000/api/api-docs to view the Swagger Resource Listing. This tells you that the server is up and ready to demonstrate Swagger.

Using the UI

There is an HTML5-based API tool available in a separate project. This lets you inspect the API using an intuitive UI. You can pull this code from here: https://github.com/swagger-api/swagger-ui

You can then open the dist/index.html file in any HTML5-enabled browser. Upen opening, enter the URL of your server in the top-centered input box. Click the "Explore" button and you should see the resources available on the server.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].