Quick start¶
Node 20 is required. Jest 29 and ESLint 9 both refuse to start on older runtimes, and it is the version CI pins.
Install both dependency trees:
Create the two local configuration files from their templates:
Then edit each, replacing every REPLACE-* token with a real value. is_local.js takes
true for local work. The Cognito identifiers in aws-exports.js come from the
deployed user pool — they ship in the browser bundle and are not secrets, but they do
have to match the pool you are authenticating against.
Compile and serve:
cd jsx && npm run build:prod && mv dist/content.js ../static/js/content.js
cd ../scss && npm run build:css && mv style.css ../static/css/style.css
cd .. && npx http-server
static/ is where the deployed site serves the bundle and stylesheet from, so the
commands above reproduce its layout locally.
With is_local.js set to true, /stream, /data and the front page's listings are
drawn from samples built into their loaders rather than from the network. The
knowledge graph is the exception: /graph and the front page's backdrop still call the
knowledge graph API, which answers any origin, localhost included.
The configuration templates are described under Architecture, and deploying the result under Deployment.