GithubHelp home page GithubHelp logo

inopinatus / subledger-webapp-static Goto Github PK

View Code? Open in Web Editor NEW

This project forked from subledger/webapp-static

0.0 1.0 0.0 28.53 MB

Subledger Web App

Home Page: https://app.subledger.com

JavaScript 83.43% CSS 16.57%

subledger-webapp-static's Introduction

Subledger App

Subledger App is a full Javascript application, built to interact with Subledger API directly from the customers browsers. It is built on top of Ember and Ember Data, using Ember-CLI to get features like depency management (NPM), javascript frameworks dependency management (Bower) and also some nice scripts to help development and build (Broccoli).

Requirements

To develop this app, you need to have Node.JS and NPM installed. It was initially developed using Node.JS v0.10.26 and NPM 1.4.3. Also, the following instructions should work on both Linux and OSX.

Setting up the Development environment

After clonning the project, access the created directory and execute the following:

  1. Install Ember-CLI: sudo npm install -g ember-cli
  2. Install Bower: sudo npm install -g bower
  3. Install PhantomJS: npm install -g phantomjs
  4. Install NPM modules: npm install
  5. Install Bower packages: bower install
  6. Run the development server: ember serve

If previous steps succeed, you should be able to access the app at http://localhost:4200/.

Production Deployment

Since this is a full Javascript, we don't need an application server for it. The production environment is comprised of a combination of Amazon S3 and Amazon Cloud Front.

Deployment uses a tool called s3_website, which in turns depends on both Ruby and Java to be installed.

With those requirements installed, execute the following steps:

  1. Install s3_website: gem install s3_website
  2. Copy file s3_website.yml.example to s3_webiste.yml
  3. Set S3 API credential and bucket info
  4. Genereate static files: ember build --environment=production --output-path=dist/v2
  5. Upload to S3: s3_website push

It is also worth noting that the app is currently configured to set a Cache-Control max-age of 60 seconds. So you should wait at least this amount of time beforing seeing the changes on the production environment.

Cloud Front SSL

In case an update to the SSL certificate is need, you will need to get the new .pem and .key files. In case the .pem files has both a certificate body and a certificate chain, those need to be separated into different files.

You will also need AWS command line tool installed.

With that in place, run the following command: aws iam upload-server-certificate --server-certificate-name AppSubledgerCom2014 --certificate-body file://app-subledger-com-body.pem --certificate-chain file://app-subledger-com-chain.pem --private-key file://app-subledger-com.key --path /cloudfront/app/

Remember to replace the --server-cerficate-name, so you don't override an existing certificate.

Then you need to login into AWS Console, select Cloud Front, edit the Distribution to select the new Certificate. After that, it will take some time to the new configuration to be applied, but after that is completed, you can check the new cert information on your browser.

Ref: http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/SecureConnections.html#CNAMEsAndHTTPS

subledger-webapp-static's People

Contributors

michetti avatar etiennedion avatar jdsninja avatar

Watchers

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.