Code Monkey home page Code Monkey logo

glukose-cloud's Introduction

Glukose Cloud

A SaaS to concentrate all glucose measures using node-RED IBM message broker and MQTT IBM protocol to comunicate with the Glukose Gateways.

glukose

The Glukose Cloud Architecture:

glukose_cloud_app

The Glukose Cloud node-RED Designer:

glukose-cloud-node

Infraestructure Techonologies:

  • NodeJS: Event-driven I/O server-side JavaScript environment based on V8. Includes API documentation, change-log, examples and announcements.
  • ExpressJS: Express is a minimal and flexible Node.js web application framework that provides a robust set of features for web and mobile applications.
  • MongoDb:MongoDB is the next-generation database that lets you create applications never before possible.
  • Node-Red: A visual tool for wiring the Internet of Things.
  • Mosca: MQTT broker as a module http://mosca.io
  • Bunyan: a simple and fast JSON logging module for node.js services

Backend Techonologies:

  • Loopback: LoopBack is a highly-extensible, open-source Node.js framework. Compare with other frameworks. Quickly create dynamic end-to-end REST APIs.
  • socket.io: Socket.IO enables real-time bidirectional event-based communication.
  • MomentJs: Parse, validate, manipulate, and display dates in JavaScript.

Frontend Techonologies:

  • RequireJS: RequireJS is a JavaScript file and module loader.
  • Require DomReady: An AMD loader plugin for detecting DOM ready.
  • JQuery: jQuery: The Write Less, Do More, JavaScript Library.
  • JQuery UI: jQuery UI is a curated set of user interface interactions, effects, widgets, and themes built on top of the jQuery JavaScript Library.
  • Angular: AngularJS is what HTML would have been, had it been designed for building web-apps.
  • Angular Couch Potato: Lazy-Load and Register Components in AngularJS Applications.
  • Angular Resource: A factory which creates a resource object that lets you interact with RESTful server-side data sources.
  • Angular UI Router: The de-facto solution to flexible routing with nested views in AngularJS.
  • Angular Animate: AngularJS provides animation hooks for common directives.
  • Angular Bootstrap: Bootstrap components written in pure AngularJS by the AngularUI Team.
  • angular-socket-io: Socket.IO component for AngularJS.
  • angular-toastr:Angular port of CodeSeven/toastr.
  • socket.io: Socket.IO enables real-time bidirectional event-based communication.
  • Bootstrap: Bootstrap, a sleek, intuitive, and powerful mobile first front-end framework for faster and easier web development.
  • DarkVelvet: Free UI Kits built on Bootstrap for any developer that wants to build a cool looking and functional website.
  • MomentJs: Parse, validate, manipulate, and display dates in JavaScript.
  • Datatable: DataTables is a plug-in for the jQuery Javascript library.

Installation:

Install mosca message broker with bunyan logger and start it:

  npm install mosca bunyan -g
  mosca -v | bunyan

      +++.+++:   ,+++    +++;   '+++    +++.
      ++.+++.++   ++.++  ++,'+  `+',++  ++,++
      +`  +,  +: .+  .+  +;  +; '+  '+  +`  +`
      +`  +.  +: ,+  `+  ++  +; '+  ;+  +   +.
      +`  +.  +: ,+  `+   +'    '+      +   +.
      +`  +.  +: ,+  `+   :+.   '+      +++++.
      +`  +.  +: ,+  `+    ++   '+      +++++.
      +`  +.  +: ,+  `+     ++  '+      +   +.
      +`  +.  +: ,+  `+  +:  +: '+  ;+  +   +.
      +`  +.  +: .+  .+  +;  +; '+  '+  +   +.
      +`  +.  +:  ++;++  ++'++   ++'+'  +   +.
      +`  +.  +:   +++    +++.   ,++'   +   +.
[2016-03-30T12:56:57.005Z]  INFO: mosca/14565 on miguel-Dell-System-XPS-L502X: server started (mqtt=1883)

Execute npm to install node packages:

  npm install

Execute bower to install ui packages:

  bower install

Access Web Glukose

  http://localhost:4000

Access Web Glukose JSON API Back-end

  http://localhost:4000/export

Access Node-Red Web designer

  http://localhost:4000/red

Copy and import this flow from node-red import clipboard

[{"id":"4d1060c0.b2efa","type":"mqtt-broker","z":"f2181939.0de7e8","broker":"localhost","port":"1883","clientid":"","usetls":false,"verifyservercert":true,"compatmode":true,"keepalive":"60","cleansession":true,"willTopic":"","willQos":"0","willRetain":"false","willPayload":"","birthTopic":"","birthQos":"0","birthRetain":"false","birthPayload":""},{"id":"9a3f0709.65c0f8","type":"debug","z":"f2181939.0de7e8","name":"out debug","active":true,"console":"false","complete":"payload","x":457,"y":60,"wires":[]},{"id":"ec611d7f.139ee","type":"catch","z":"f2181939.0de7e8","name":"","scope":null,"x":190,"y":222,"wires":[["bb6a5bca.4495a8"]]},{"id":"bb6a5bca.4495a8","type":"debug","z":"f2181939.0de7e8","name":"error","active":true,"console":"false","complete":"payload","x":356,"y":222,"wires":[]},{"id":"cbec3d13.3413c","type":"function","z":"f2181939.0de7e8","name":"persist","func":"console.log('Start persist node');\n\nvar loopback = context.global.loopback;\nvar Device = loopback.models.Device;\n\n// convert from string to JSON\nmsg.payload = JSON.parse(msg.payload);\n\nDevice.registerMeasure(msg.payload, function(err, device) {\n    if (err) node.error(\"registerMeasure device error\", msg);\n    \n    node.send(msg);\n});\n    \nreturn;","outputs":1,"noerr":0,"x":266,"y":60,"wires":[["9a3f0709.65c0f8"]]},{"id":"682e54c8.97d1ac","type":"mqtt in","z":"f2181939.0de7e8","name":"glukose mqtt","topic":"glukose","broker":"4d1060c0.b2efa","x":110,"y":60,"wires":[["cbec3d13.3413c"]]}]

Licenses

The source code is released under Apache 2.0.

glukose-cloud's People

Contributors

masalinas avatar

Watchers

Andres Carmona 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.