GithubHelp home page GithubHelp logo

kialryan / dromedary Goto Github PK

View Code? Open in Web Editor NEW

This project forked from liatrio/dromedary

0.0 1.0 0.0 527 KB

Sample app to demonstrate a working pipeline using Infrastructure as Code and AWS Code Services

License: MIT License

JavaScript 90.55% HTML 7.01% CSS 2.44%

dromedary's Introduction

dromedary ๐Ÿช

Dromedary is a sample application created by Stelligent to be a very simple, lightweight yet useful application primarily used with AWS. Liatrio forked the application and removed the AWS functionality to demonstrate a working solution to our enterprise and non AWS customers. If you are interested in seeing this work with AWS, please see Stelligent's Github or checkout Stelligent's Website.

The Demo App ๐Ÿช

The Dromedary demo app is a simple Nodejs application that displays a pie chart to users. The data that describes the pie chart (i.e. the colors and their values) is served by the application.

If a user clicks on a particular color segment in the chart, the frontend will send a request to the backend to increment the value for that color and update the chart with the new value.

The frontend will also poll the backend for changes to values of the colors of the pie chart and update the chart appropriately.

Running Locally ๐Ÿช

Install Prerequisites

  1. Ensure nodejs and npm are installed
  • On Mac OS X, this can be done via Homebrew: brew install node
  • On Amazon Linux, packages are available via the EPEL yum repo: yum install -y nodejs npm --enablerepo=epel
  1. Java must be installed so that DynamoDB Local can run
  2. Install dependencies: npm install

NOTE: Dromedary relies on gulp for local development and build tasks. You may need to install gulp globally: npm install -g gulp

If gulp is not globally installed, ensure ./node_modules/.bin/ is in your PATH.

Local Server

The default task will start dynamodb-local on port 8079 and a node server listening on port 8080:

  1. Run gulp - this downloads and starts DynamoDB Local and starts Node
  2. Point your webbrowser to http://localhost:8080

Executing Unit Tests

Unit tests located in test/ were written using Mocha and Chai, and can be executed using the test task:

  1. Run gulp test

Executing Acceptance Tests

Acceptance tests located in tests-functional/ require Dromedary to be running (eg: gulp), and can be executed using the test-functional task:

  1. Run gulp test-functional

These tests (which, at this time are closer to integration tests than functional tests) exercise the API endpoints defined in app.js.

Building a Distributable Archive

The dist task copies relevant files to dist/ and installs only dependencies required to run the standalone app:

  1. Run gulp dist

dist/archive.tar.gz will be created if this task run successfully.

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.