4d77516bf4
Summary: This commit adds a simple Python server for connecting the output of `yarn api` (or `yarn api --watch`) to an observable notebook. We need a custom server rather than just `python3 -m http.server` to send CORS headers properly. This server enables a very tight loop from editing SourceCred core code on your local filesystem to seeing live updates in an Observable notebook, with latency on the order of one second. Test Plan: Run `yarn api --watch` in the background. Launch the new API server. Navigate to <https://observablehq.com/demo>. Copy the two paragraphs of Observable code from `scripts/serve_api.py` into _separate_ Observable cells, and execute them. Note that `myGraph` becomes a valid SourceCred graph. Modify `src/core/graph.js` to add `this._aaa = 123;` to the top of the `Graph` constructor. Re-execute the first Observable cell (the one that loads the SourceCred module), and note that `myGraph` updates to include the new `_aaa` attribute: ![Screenshot of Observable notebook after test plan][ss] [ss]: https://user-images.githubusercontent.com/4317806/71958748-dddf8680-31a5-11ea-9016-5df76ceeea46.png wchargin-branch: api-server |
||
---|---|---|
.. | ||
build_static_site.sh | ||
check-gnu-coreutils.sh | ||
check-stopships.sh | ||
deploy.sh | ||
docker-entrypoint.sh | ||
ensure-flow.sh | ||
serve_api.py | ||
update_snapshots.sh |