All Projects → kumahq → kuma-demo

kumahq / kuma-demo

Licence: Apache-2.0 license
A demo app to illustrate the capabilities and advantages of Kuma. 🐻

Programming Languages

Vue
7211 projects
javascript
184084 projects - #8 most used programming language
shell
77523 projects
Dockerfile
14818 projects
HTML
75241 projects

Projects that are alternatives of or similar to kuma-demo

P2p Internet Workshop
Building the Peer-to-Peer Internet workshop series
Stars: ✭ 88 (+72.55%)
Mutual labels:  mesh-networks
Lime Packages
OpenWrt packages composing LibreMesh meta-firmware for wireless mesh networking
Stars: ✭ 204 (+300%)
Mutual labels:  mesh-networks
MeshNetSimulator
A simulator for sketching mesh network routing strategies
Stars: ✭ 71 (+39.22%)
Mutual labels:  mesh-networks
Wifimeshraspberrypi
Workshop to create a sensor application over a WiFi Mesh network
Stars: ✭ 99 (+94.12%)
Mutual labels:  mesh-networks
Multipeer
📱📲 A wrapper for the MultipeerConnectivity framework for automatic offline data transmission between devices
Stars: ✭ 170 (+233.33%)
Mutual labels:  mesh-networks
Drago
A flexible configuration manager for Wireguard networks
Stars: ✭ 204 (+300%)
Mutual labels:  mesh-networks
Quantumgate
QuantumGate is a peer-to-peer (P2P) communications protocol, library and API written in C++.
Stars: ✭ 62 (+21.57%)
Mutual labels:  mesh-networks
aredn ar71xx
AREDN develop branch porting on top of OpenWRT 19.07.0
Stars: ✭ 68 (+33.33%)
Mutual labels:  mesh-networks
Wgsd
A CoreDNS plugin that provides WireGuard peer information via DNS-SD semantics
Stars: ✭ 169 (+231.37%)
Mutual labels:  mesh-networks
Awesome Mesh
This is a list for mesh networking: Documentation, Free Software mesh protocols, and applications. A mesh network is a network topology in which each node relays data for the network. All mesh nodes cooperate in the distribution of data in the network.
Stars: ✭ 227 (+345.1%)
Mutual labels:  mesh-networks
Wireguard Private Networking
Build your own multi server private network using wireguard and ansible
Stars: ✭ 124 (+143.14%)
Mutual labels:  mesh-networks
Berkanansdk
Bluetooth mesh messaging SDK for apps
Stars: ✭ 150 (+194.12%)
Mutual labels:  mesh-networks
Openthread
OpenThread released by Google is an open-source implementation of the Thread networking protocol
Stars: ✭ 2,643 (+5082.35%)
Mutual labels:  mesh-networks
Ot Rtos
OpenThread RTOS, an integration of OpenThread, LwIP, and FreeRTOS.
Stars: ✭ 90 (+76.47%)
Mutual labels:  mesh-networks
p2p-project
A peer-to-peer networking framework to work across languages
Stars: ✭ 68 (+33.33%)
Mutual labels:  mesh-networks
Openwisp Network Topology
Network topology collector and visualizer. Collects network topology data from dynamic mesh routing protocols or other popular networking software like OpenVPN, allows to visualize the network graph, save daily snapshots that can be viewed in the future and more.
Stars: ✭ 67 (+31.37%)
Mutual labels:  mesh-networks
Prototype Cjdns Pi
Prototype system for mesh networks on single board computers
Stars: ✭ 205 (+301.96%)
Mutual labels:  mesh-networks
SubdivNet
Subdivision-based Mesh Convolutional Networks.
Stars: ✭ 178 (+249.02%)
Mutual labels:  mesh-networks
edgevpn
⛵ The immutable, decentralized, statically built p2p VPN without any central server and automatic discovery! Create decentralized introspectable tunnels over p2p with shared tokens
Stars: ✭ 223 (+337.25%)
Mutual labels:  mesh-networks
Netjsongraph.js
NetJSON NetworkGraph visualizer based on d3.js
Stars: ✭ 216 (+323.53%)
Mutual labels:  mesh-networks

Kuma Demo Application

License Slack Twitter

Kuma is a universal open source control-plane for Service Mesh and Microservices that can run and be operated natively across both Kubernetes and VM environments, in order to be easily adopted by every team in the organization.

This repository houses the demo application used to illustrate Kuma's extensive features. To find the source of Kuma, please check out Kuma's repository.

Table of contents

Introduction

The Kuma Demo Application is a clothing marketplace where you can browse listed items along with the reviews left by users. It consists of four components: Vue frontend UI, Node backend API, PostgreSQL, and Redis.

Deployment

Kuma is a universal control plane that can run across both modern environments like Kubernetes and more traditional VM-based ones.

The first step is obviously to download and install Kuma on the platform of your choice. Different distributions will present different installation instructions that follow the best practices for the platform you have selected. Regardless of what platform you decide to use, the fundamental behavior of Kuma at runtime will not change across different distributions.

To see examples of how to deploy Kuma alongside this marketplace application, please check out the following instructions:

Application Components

Frontend

The frontend UI is built using VuePress and the source code can be found in the app directory. It gives the users a webpage where they can browse items and reviews.

Backend

The backend API is built using Node.js and the source code can be found in the api directory. It contains endpoints that enables the user to query the PostgreSQL and Redis databases.

PostgreSQL

The PostgreSQL database is used to store all the items. The list of items can be found in this JSON file. Here is a sample of how each object in our list of items look:

...
  {
    "index": 0,
    "price": "$354.80",
    "quantity": 3,
    "company": "Manufact",
    "size": "M",
    "categoryIndex": 7,
    "picture": "https://i.imgur.com/HJarGs0.jpg",
    "category": "Frugal Sun Dress",
    "name": "Manufact Frugal Sun Dress - Size M",
    "productDetail": "Elit dolor eu excepteur quis officia cillum cillum eiusmod nisi ex. Commodo nisi deserunt duis et ipsum non. Aute dolore proident Lorem mollit consectetur pariatur in reprehenderit.\r\n",
    "reviews": [
      {
        "id": 0,
        "name": "Trina Baldwin",
        "review": "Culpa exercitation anim do qui anim non aliquip et aute laborum tempor eiusmod et.",
        "rating": 1
      },
      {
        "id": 1,
        "name": "Erica Hickman",
        "review": "Fugiat nostrud fugiat sunt mollit cillum mollit minim ex culpa.",
        "rating": 5
      },
      {
        "id": 2,
        "name": "Williamson Justice",
        "review": "Ut incididunt adipisicing irure et aliquip deserunt in voluptate ipsum tempor duis incididunt et.",
        "rating": 2
      },
      {
        "id": 3,
        "name": "Frieda Watts",
        "review": "Commodo labore non consequat et minim irure et amet eu laborum id dolor excepteur.",
        "rating": 1
      },
      {
        "id": 4,
        "name": "Willa Rodriguez",
        "review": "Ipsum et sint excepteur aliquip ut est Lorem qui mollit.",
        "rating": 1
      }
    ]
  },
...

All this information will be saved in PostgreSQL EXCEPT the reviews. Reviews will be separated out and stored in Redis.

Redis

The Redis database is used to store all the items' reviews. The list of reviews for each item can be found in this JSON file.

License

Copyright 2020 the Kuma Authors.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].