jhubble / chartview

Simple chart with Vue, chartkick, brunch and Go

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PREREQUISITES:
The following packages must be installed on the system:
Go Language:       https://golang.org/
NodeJS (with NPM): https://nodejs.org/en/

The npm and go binaries must be available in the path.

BUILD AND RUN:
(All commands assume you are in the root of the project directory)
If bash is available, run the follwoing command to install required modules and launch:
start.sh

-OR-
On other platforms, you may manually build and run:
npm install -g brunch
npm install
brunch build
go run simpleService.go

The server currently runs in the foreground. Keep the window open and use CTRL-C to stop.

To run in the background:
nohup go run simpleServer.go &

The app is available at:
http://localhost:8081

TESTS:
Run the following comand to execute the go tests
go test


IMPLEMENTATION NOTES:
1. The front end UI is created using the Vue front-end framework with Chart.JS
charting library.  I chose these because they were the most popular items
in their class that I had never used before. The were adequate for current
purposes. However, were this a production environment, there would have been
many additional factors that came into play. (Factors include: What is already
being used? What other features will we need? What level of support is 
available in the community?)

2. This has been constructed as a quick POC. Many additional components
would be in place in a prouction. This includes:

        a. More robust tests
        b. A dynamic reload development environment. (Using brunch watch)
        c. End to End tests (most likely via a selenium framework)
        d. More extensive error handling. (back end should deal with bad data, etc.)
        e. More flexible sizing of charts
                

About

Simple chart with Vue, chartkick, brunch and Go


Languages

Language:Vue 45.3%Language:Go 29.4%Language:JavaScript 14.9%Language:HTML 6.4%Language:Shell 3.9%