GeoGebra Offline Instructions ============================= Files created: - geogebra-offline.html : Your original export modified to load a LOCAL deployggb.js - geogebra-embed.html : A tiny wrapper that iframes geogebra-offline.html (handy for Jupyter or LMSes) - README_offline_geogebra.txt : This file What you still need: -------------------- 1) Download GeoGebra's loader script *once* and place it next to these HTML files as `deployggb.js`. Example commands (run in the same folder as the HTML files): curl -L -o deployggb.js https://www.geogebra.org/apps/deployggb.js or wget -O deployggb.js https://www.geogebra.org/apps/deployggb.js 2) (Optional but recommended for FULLY offline use): The loader (deployggb.js) normally fetches additional runtime assets from geogebra.org. For truly offline usage (no internet at all), you must also mirror/host the GeoGebra Web app files it requests (the "apps" runtime) and change the internal base URL used by the loader. The exact files and paths can change by version; a common approach is to: - Inspect the network requests in your browser dev tools when the app loads online. - Mirror those directories (often under something like /apps/ or /html5/). - Serve them locally (same directory or a local web server) and adjust paths in the loader or via a local web server rewrite to point to your mirrored copies. If 'deployggb.js' provides a configuration option for a base path, set it to your local copy. Otherwise, you can host the mirrored assets on a local web server and keep the paths consistent. How to view locally: -------------------- - Double-click geogebra-embed.html (or open in a browser). Some browsers restrict file:// + JS; using a local web server avoids this. For example: python3 -m http.server 8000 Then open: http://localhost:8000/geogebra-embed.html Using inside Jupyter: --------------------- Place the HTML files in the notebook's working directory (or a subfolder) and in a cell run: from IPython.display import IFrame IFrame("geogebra-embed.html", width=920, height=660) Or inline the applet HTML directly (the contents of geogebra-offline.html) with: from IPython.display import HTML HTML(open("geogebra-offline.html", "r", encoding="utf-8").read()) Notes: ------ - If your Jupyter notebook is not "trusted", JavaScript may be blocked. Use "Trust Notebook". - PDF export of notebooks won't preserve interactivity. Use HTML for sharing interactive content. - If you restructure paths, keep the iframe 'src' updated accordingly.