Kozai::Assets
The web interface, compiled into the binary.
Every file under src/web/ is read at compile time by read_file and
becomes a string constant. The resulting program has no data directory, no
install step and no way to be half-deployed: the executable either runs or
it does not, and if it runs it has its user interface.
NOTE: there is no build pipeline here, and there will not be one. No Node,
no bundler, no transpiler, no CSS framework. The interface is HTML, CSS and
JavaScript as the browser receives them, which means git blame on the file
you are debugging points at the code that is actually running, and building
this project needs nothing but a Crystal compiler.
The map is a committed SVG rather than tiles from a CDN. See
tools/geojson_to_svg.cr; the short version is that a station with no
internet is the target case, not a degraded one.
Constants
Behaviour.
Every asset, by request path.
The single page.
Presentation.
Continent outlines, equirectangular, public domain.