Git Product home page Git Product logo

swagger2slate's Introduction

How to create html docs using swagger

  • Store your api documentation with your code.
  • Update and publish html documentation in couple lines in terminal.

1. Document your php api

  1. Install Php annotations plugin for PhpStorm (Preferences → Plugins → Browse repositories → PHP Annotation → Install Plugin)
  2. Install swagger-php (composer require zircote/swagger-php=2.*@dev)
  3. Write annotations (Swagger-php getting started)
  4. Convert annotations to swagger.json (./vendor/bin/swagger . -o ./swagger.json)

2. Generate html docs and publish to github

Requirements

  • branch gh-pages must exists
  • swagger.json in repository
  • bundler (gem install bundler)

Steps

Get slate in your repository

git clone --depth 1 [email protected]:{your-name}/{your-repository} {your-repository}-docs # create folder to store docs
cd {your-repository}-docs
git remote add slate [email protected]:tripit/slate.git # add slate origin to pull from
git fetch slate
git checkout --orphan slate slate/master # create slate branch with slate/master contents
git commit -m "first slate commit"

Prepare slate

bundle install --path vendor/bundle
echo -e "\nvendor/" >> .gitignore

Download swagger2slate.phar to current directory and set execution rights to file

chmod +x swagger2slate.phar
echo -e "\nswagger2slate.phar" >> .gitignore

Generate slate markdown

./swagger2slate.phar convert ../{your-repository}/swagger.json  -o source/index.md

Preview docs

bundle exec middleman server

Commit changes

git add -u
git commit -m "api docs update"

Publish docs

bundle exec rake publish

Check out your doc: http://{your-name}.github.io/{your-repository}/

Resources

Written with StackEdit.

swagger2slate's People

Contributors

aasanchez avatar m8rge avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.