Giter Club home page Giter Club logo

simple-openapi's Introduction

Simple Open API

System Architecture

                                      ┌────────────────────────────────────────────────────┐
                                      │┌───────────┐               ┌──────────┐            │
                           get        ││           │               │ Consent  │            │
          ┌──────────────consent──────┼┼───────────┼──────────────▶│          │            │
          │                           ││           │               └──────────┘            │
          │                           ││           │   ┌──────────┐      │                 │
          │                           ││           │   │Resources │      │                 │
          │                          ┌┼┼───────────┼──▶│   API    │      │                 │
          │                          │││           │   └──────────┘      ▼                 │
┌──────────────────┐                 │││           │               ┌──────────┐            │
│                  │                 │││           │               │  Oauth2  │            │
│                  │                 │││API Gate───┼─introspect───▶│          │◀─┐         │
│   Web Browser    │        get      │││  (Kong)   │               └──────────┘  │         │
│      Client      │─────resources───┘││           │                     ▲       │         │
│       ┌──────────┤                  ││           │             accept  │       │         │
│       │  JS SDK  │───────────login─┐││           │          ┌──login ──┘       │         │
└───────┴──────────┘                 │││           │          │ request          │         │
                                     │││           │          │               accept       │
                                     │││           │    ┌──────────┐          login        │
                                     │││           │    │ SSO Web  │         request       │
                                     └┼┼───────────┼───▶│  (idp)   │             │         │
                                      ││           │    └──────────┘             │         │
                                      ││           │                             │         │
             ┌──────────────────┐     │└───────────┘                             │         │
             │                  │     └──────────────────────────────────────────┼─────────┘
             │                  │     ┌──────────────────────────────────────────┴─────────┐
             │  Native Client   │     │  implicit    ┌──────────┐      ┌──────────────────┐│
             │                  │─────┼───login────┐ │  Login   │      │   Native Login   ││
             │       ┌──────────┤     │            └─┤          ├─────▶│     Adapter      ││
             │       │  JS SDK  │     │              └──────────┘      └──────────────────┘│
             └───────┴──────────┘     └────────────────────────────────────────────────────┘

Run with docker compose

docker-compose up -d

Helm

Install

helm repo add openapi https://jiramot.github.io/simple-openapi/
helm install openapi openapi/openapi

Develop

Generate helm dependencies (Chart.lock)

cd helm/charts/openapi-oauth2-admin/
helm dependency update

Create chart repo

  1. create package
helm package helm
  1. create index.yaml
helm repo index --url https://jiramot.github.io/simple-openapi .
                     ┌───────────────────────────────────────────┐
                     │OPEN API                                   │
                     │                        ┌──────────────┐   │
                     │                        │ Profile API  │   │
┌──────────────┐     │ ┌──────────────┐   ┌──▶│              │   │
│   Partner    │     │ │  API Gatway  │   │   └──────────────┘   │
│    System    │─────┼▶│              │───┤                      │
└──────────────┘     │ └──────────────┘   │                      │
                     │         │          │   ┌──────────────┐   │
                     │         │          │   │  Point API   │   │
                     │         ▼          └──▶│              │   │
                     │ ┌──────────────┐       └──────────────┘   │
                     │ │    Oauth2    │                          │
                     │ │              │                          │
                     │ └──────────────┘                          │
                     │                                           │
                     └───────────────────────────────────────────┘

simple-openapi's People

Contributors

jiramot avatar

Watchers

 avatar 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.