Web Dev Solutions

Catalin Mititiuc

## Install dev server packages docker run --rm -w /app -v $PWD:/app -u $(id -u):$(id -u) node npm install ## Start the dev server docker run --rm --init -it -w /app -v $PWD:/app -p 8080:8080 node node dev-server.js Visit `localhost:8080` to view. ## Run a test You need chrome and chromedriver installed. The Dockerfile builds an image that does that. Then run the test with that image. `--network host` gives the container internet access. Necessary if tests make outside requests. docker run --rm -it -v $PWD:/usr/src/app --network host btroops node google_test TODO add firefox and geckodriver ## Rough way to save the SVG map generated by JavaScript client-side const XMLS = new XMLSerializer(); const svg_xmls = XMLS.serializeToString(svg); let bl = new Blob([svg_xmls], {type: "text/html" }); let a = document.createElement("a"); a.href = URL.createObjectURL(bl); a.download = "map.svg"; a.hidden = true; document.body.appendChild(a); a.innerHTML = "something random - nobody will see this, it doesn't matter what you put here"; a.click()