Skip to content

Latest commit

History

History
71 lines (54 loc) · 2.08 KB

File metadata and controls

71 lines (54 loc) · 2.08 KB

WebVPython workspace

Management repo for the Web VPython stack. The four active sub-repos are separate git repositories cloned into this directory.

Sub-repos

DirectoryRepoPurpose
flaskHost/vpython/flaskHostFlask app, Cloud Run deployment
rsWVPRunner/vpython/rsWVPRunnerRapydScript runner, GCS static
wmWVPRunner/vpython/wmWVPRunnerWASM/Pyodide runner, GCS static
webVPythonDocsHome/vpython/webVPythonDocsHomeSphinx docs, GCS static
glowscript/vpython/glowscriptClassic GlowScript (being retired)

First-time setup

git clone git@github.com:vpython/glowThings.git
cd glowThings
bash setup.sh

setup.sh clones each sub-repo and runs post-clone setup:

  • wmWVPRunner: npm install
  • rsWVPRunner: installs Uglify-ES node_modules (needed for build-packages)
  • webVPythonDocsHome: creates .venv and installs Sphinx dependencies

Local development

make serve # starts flask :8080, rsWVPRunner :8090, wmWVPRunner :5173

Each runner can also be started individually:

cd flaskHost && bash serve.sh
cd rsWVPRunner && bash serve.sh
cd wmWVPRunner && bash serve.sh

Deploy

make deploy # all four
make deploy-flask # flaskHost only (Cloud Run)
make deploy-runners # both runners (GCS)
make deploy-docs # docs (GCS)

Rebuilding GlowScript packages

After modifying any file in rsWVPRunner/lib/ or rsWVPRunner/shaders/:

make build-packages

This rebuilds all four package files in rsWVPRunner/package/ and regenerates rsWVPRunner/lib/glow/shaders.gen.js from shader sources. Then redeploy with make deploy-runners.

Public URLs

ServiceURL
Production (beta)https://beta.webvpython.org
Cloud Run directhttps://flaskdstorehost-dhppn6xgeq-uc.a.run.app
RS runner (GCS)https://storage.googleapis.com/rswvprunner/untrusted/run.html
WASM runner (GCS)https://storage.googleapis.com/wmvprunner/index.html
Docs (GCS)https://storage.googleapis.com/glow-docs/VPythonDocs/index.html