hi_score 1.0 released

A full life-cycle starter project for SPAs

hi_score

Overview

Version 1.0.x of hi_score has has been released! This is a full life-cycle starter project for web application client development. It embodies best (or at least pretty-darn-good!) practices accumulated from over 20 years of continuous web development experience.

Quick Start

Installation requires a modern Linux distribution (VMs are great!) and three commands:

$ git clone git@github.com:mmikowski/hi_score.git
$ cd hi_score
$ npm install && npm run prep-libs

Installation has been verified on Ubuntu 16.04, 16.10, and CentOS 6.5. Ubuntu users may find this spreadsheet useful.

Test, Coverage, and Distribution

One can run tests, inspect coverage, and build a compressed distribution of two example applications in less than a minute. The distribution is less than that are less than 10% the size of the source code:

$ npm test
$ npm run cover
$ google-chrome coverage/lcov-report/index.html
$ npm run buildify
$ tree build/dist
$ du -sh . build/dist
$ google-chrome build/dist/ex01.html build/dist/ex02.html

Features

hi_score can really jump-start web client development. With lots of hard stuff resolved out-of-the-box, we can focus on improving things that really matter, like the JavaScript, HTML, CSS and architecture we need for our application.

After installation, hi_score provides many highly desirable capabilities that can be otherwise very difficult to orchestrate:

  • A proven standard directory structure
  • Vendor library management (npm install && npm run prep-libs)
  • Vendor font management (npm install && npm run prep-libs)
  • Code written to exacting standards to ensure readability
  • Automatic namespacing and run-time control of CSS using PowerCSS
  • Linting (JSLint, whitespace check, strict check)
  • Automatic in-line browsable HTML documentation (markdown + pandoc)
  • TDD and regression tests (nodeunit + JSDOM)
  • Commit-hook which ensures test and linting pass before check-in
  • Type-cast libraries
  • Code coverage (Istanbul)
  • Code coverage reporting (Coveralls)
  • Build system manifest (Buildify)
  • Build system compression (patched UglifyJS + SuperPack)
  • Distribution-ready code

Install hi_score today and start writing TDD driven client code immediately. The project comes with recommended libraries, but feel free to swap our your own (but read the docs on how to do this). That’s the point.

Learn more

This project intends to provide a more flexible and portable approach to writing Single Page Web Applications than most SPA frameworks.

Please see the GitHub documentation for full details.

Cheers, Mike

END

Written on March 1, 2017