Giter Club home page Giter Club logo

microgateway's Introduction

Build Status

Apigee Microgateway

Note: Description and code apply to Microgateway v2.x It's not compatible with v1.x series of Microgateway.

The Apigee Microgateway is a lightweight API management proxy that routes requests and responses between API consumers and API providers. As requests are routed the microgateway introduces an eventing model that is based on the concept of http middleware. You can add custom plugins to the http router via the plugins directory. You can also change the code to explicitly load plugins via the gateway.addPlugin method. For more information about plugins see https://github.com/apigee/microgateway-plugins. For more information on how to use the producet see the product documentation

microgateway

The Microgateway is composed of 3 components

  • microgateway-core: a lightweight core server that forwards requests and responses between northbound and southbound endpoints. Core also contains an event model that will call each plugin.
  • microgateway-config: a config module that allows a user to pull down and load yaml configs from Apigee Edge
  • microgateway-plugins: a file system reference to a collection of directories that allow a user to extend the microgateway.

It also provides a CLI that an admin uses to wire/configure an instance of Microgateway with their Edge (Cloud or On-Premises) org as well as start Microgateway. Below is the workflow of the cli. In order to load custom plugins you must load your plugin in the plugins directory. The plugins directory is configured in the default.yaml or in the specified config directory.

micro-flow

Official Microgateway Docs

The official docs for Microgateway can be found on the Apigee website.

Get support and help

The Apigee community is the best place to ask questions, suggest features, and learn best practices with Microgateway.

Filing Issues

For filing issues please follow the following steps, and file the issue here.

  • An issue should have a clear concise title to indicate the problem
  • Reproduction steps should be included to verify what the issue is
  • Including a relevant Apigee Community post to ensure that fix information is propogated into the community.

Guidelines for Contribution

Pull requests to microgateway repos are gladly accepted. However, to make it easier on maintainers reviewing requests we kindly ask that you include the following with each pull request.

  • Title should be clear and concise as to what is in the Pull Request
  • Please include some unit tests with your PR.
  • If it is a feature addition please include a use case, and how to use the feature.
  • If it is a bug fix please include reproduction steps for the bug, or link to an issue with reproduction steps.
  • Ensure your PR is compatible with Node.js as far back as 4.5.X
  • Follow our general style of coding. Taking advantage of the latest ES6 features.

License

Apache

microgateway's People

Contributors

anil614sagar avatar dkoroth avatar f1erro avatar gaonkar18y avatar imesh avatar indraneeldey avatar kevinswiber avatar keyurkarnik avatar kkkarnik avatar mdobson avatar niheelthakkar89 avatar noahdietz avatar prabhatjha avatar rajeshm7910 avatar relloller avatar rleddy avatar shawnfeldman avatar shiveshwar avatar srikanthbhadragiri avatar srinandan avatar stx-cld avatar sumitparakh avatar swilliams11 avatar theganyo avatar vilobhmm avatar

Watchers

 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.