This is the codebase for the frontend system for the Sightmap product.
The project itself is a ReactJS visual
application that uses Redux to manage behavior.
It’s a fairly beefy frontend app - we’ve got:
Just to get the build system set up. Everything is minified, also, so if you’re
running into an error, expect to use sourcemaps.
To get a clone of this project up-and-running, just install the dependencies
and run gulp:
npm install && gulp
Note, you should have
npmand friends installed already on your system. To
get 'em, check out nvm.
This should build a “distribution” file under dist/bundle.js. The index.html
file sets-up the window and silly HTTP-header stuff to initialize the web application
as a wrapper, then loads this file basically. When index.html is loaded in a
browser, it should take-over the DOM element and start the ReactJS application.
The code in this project was particularly build to be robust - we expect this codebase
to last - over time, it should behaive the same as it did a year ago. To achieve
this, we’ve provided excessive testing and documentation for the codebase - to
exemplify intent verbatim, and to exasperate design for well-prepared improvement.
The product comes with a suite of tests that can be run with npm test. They
are designed to be broadly covering - in that we want to catch as many edge-cases
of our code as we can. I’m using a property-based testing framework called
jsverify to make strong assertions about the code.
Run the tests:
npm test
To build the documentation, run the following command:
jsdoc src/ --package package.json --readme README.md -r