Giter VIP home page Giter VIP logo

docs.konghq.com's Introduction

KONG Website

This repository is the source code for Kong's documentation website. It is a Jekyll website hosted on GitHub pages.

Develop Locally With Docker

make develop

Testing Links With Docker

make check-links

Develop Locally Without Docker

Prerequisites

Install

gem install bundler
npm install

Running

npm start

Deploying

The repository must be manually deployed to GitHub pages:

npm run deploy

Search

We are using Algolia docsearch for our documentation search. The algolia index for Kong is maintained by Algolia through their docsearch service. Their scraper runs every 24 hours. The config used by the scraper is open source for docs.konghq.com and can be found here. To update the scraper config, you can submit a pull request to the config. To test a config change locally, you will need to run their open source scraper against your own scraper to test out config changes.

Generating the Plugin Development Kit documentation

  • Have a local clone of Kong
  • Install Luarocks (comes with Kong)
  • Install ldoc using Luarocks: luarocks install ldoc 1.4.6
  • In the Kong repository, check out the desired branch/tag/release
  • Run: KONG_PATH=path/to/your/kong/folder KONG_VERSION=0.14.x gulp pdk-docs
  • This command will attempt to:
    • Obtain an updated list of modules from your local PDK and put it inside your nav file
    • Generate documentation for all the modules in your PDK (where possible) and put in a folder inside your version docs

Generating the Admin API, CLI and Configuration Documentation

  • Make sure that the resty and luajit executables are in your $PATH (installing kong should install them)
  • Several Lua rocks are needed. The easiest way to get all of them is to execute make dev in the Kong folder
  • Have a local clone of Kong
  • In the Kong repository, check out the desired branch/tag/release
  • To generate the Admin API docs:
    • Run: KONG_PATH=path/to/your/kong/folder KONG_VERSION=0.14.x gulp admin-api-docs
    • This command will attempt to:
      • Compare Kong's schemas and Admin API routes with the contents of the file autodoc-admin-api/data.lua and error out if there's any mismatches or missing data.
      • If no errors were found, a new admin-api.md file will be generated in the path corresponding to the provided KONG_VERSION.
  • To generate the CLI docs:
    • Run: KONG_PATH=path/to/your/kong/folder KONG_VERSION=0.14.x gulp cli-docs
    • This command will:
      • Extract the output of the --help for every kong CLI subcommand
      • Generate a new cli.md in the path corresponding to the provided KONG_VERSION.
  • To generate the Configuration docs:
    • Run: KONG_PATH=path/to/your/kong/folder KONG_VERSION=0.14.x gulp conf-docs
    • This command will:
      • Parse Kong's kong.conf.default file and extract sections, variable names, descriptions, and default values
      • Write those down inside a configuration.md file in the path matching KONG_VERSION.
      • The command will completely overwrite the file, including text before and after the list of vars.
      • The data used for the before/after parts can be found in autodoc-conf/data.lua

Listing Your Extension in the Kong Hub

We encourage developers to list their Kong plugins and integrations (which we refer to collectively as "extensions") in the Kong Hub, with documentation hosted on the Kong website for ready access.

See CONTRIBUTING for more information.

docs.konghq.com's People

Contributors

thibaultcha avatar subnetmarco avatar rainum avatar coopr avatar nijikokun avatar levfishbluefish avatar kikito avatar tieske avatar theetrain avatar h3xar0n avatar hishamhm avatar sonicaghi avatar briandominick avatar renovate[bot] avatar jlawlzz avatar darrenjennings avatar rainest avatar p0pr0ck5 avatar aaronhmiller avatar hutchic avatar hbagdi avatar gszr avatar bungle avatar shashiranjan84 avatar lconnolly avatar john-paul-keenan avatar ukiahsmith avatar moaiandin avatar neeravbm avatar jeremyjpj0916 avatar

Watchers

James Cloos 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.