Giter VIP home page Giter VIP logo

juancarloscruzd / agile-open-api-docs Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kalinchernev/agile-open-api-docs

0.0 0.0 0.0 1.06 MB

Empowers API experts to develop and document their APIs in more integrated ways.

Home Page: https://restful.io/agile-documentation-for-your-api-driven-project-based-on-open-api-standards-11e54d4326bb#.offuzw7gj

License: MIT License

CSS 21.90% HTML 0.41% JavaScript 77.69%

agile-open-api-docs's Introduction

Agile Open API Documentation

This repository demonstrates convenient workflow for developing both an API and its documentation in an effective way. We integrate several tools supporting the Open API specification. (aka Swagger specification)

Main actors:

  • restify - Simple API server
  • swagger-jsdoc - Reads jsdoc comments and generates a re-usable swagger.json specification
  • swagger-ui - Takes the output of swagger-jsdoc and displays beautiful documentation pages
  • browser-sync - Listens for changes in the folder with Swagger UI documentation and reloads on changes

This toolchain is highly simplified, because it focuses on swagger-jsdoc and browser-sync as means to facilitate you, API experts, be productive. If gulp, grunt or webpack are already present in your existing toolchain, it's a matter of configuring them a bit to take all benefits of what is shown here.

About

The aim of this project is to demonstrate an effective workflow of building an API-first project with live documentation which comes from code.

It basically shows how inter-connected watch tasks can work together letting you focus on your job while all the auto-generation happen in the background.

Read this article for detailed explanations.

API tasks

// Develop the API server with nodemon
$ npm run api:develop

// Document the API with swagger-jsdoc in watch mode
$ npm run api:document

// Do both at the same time
$ npm run api

Documentation tasks

// Develop the Swagger UI documentation
$ npm run docs:develop

Only npm run docs will do the same at this stage of the project.

Linting

Standard is used for standardizing the JavaScript part.

$ npm run lint:js

Only npm run lint will also work just fine at this stage of the project.

Hint: configuring WebStorm/PhpStorm worths spending the time.

LICENSE NOTICE

All the code except Swagger UI modifications under /api-docs folder are licensed under MIT license. See the LICENSE file for details.

The Swagger UI modifications under /api-docs are licensed separately under Apache License, Version 2.0 with LICENSE.txt included in the folder. (Which is an override on top of Smart Bear's original LICENSE.

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.