Merged
Conversation
There was a problem hiding this comment.
Pull request overview
This PR replaces the old /docs markdown renderer with a new interactive “tour” section that pairs lesson content with an in-browser editor + runner, while also refactoring the standalone web IDE to use shared CodeMirror setup and updating related docs/wasm dependencies.
Changes:
- Add a new
/tour/[...slug]route that loads lesson markdown + code and runs it viamodu-wasm. - Extract a shared CodeMirror configuration (
newIDE) and introduce a basic Modu syntax highlighter. - Update site-wide documentation links and bump
modu-wasmto3.1.1(plus wasm output handling tweaks and some lang/runtime changes).
Reviewed changes
Copilot reviewed 47 out of 50 changed files in this pull request and generated 14 comments.
Show a summary per file
| File | Description |
|---|---|
| web/src/routes/tour/+page.svelte | Redirect /tour to the first tour lesson |
| web/src/routes/tour/[...slug]/+page.ts | Adds load function for tour slug routing |
| web/src/routes/tour/[...slug]/+page.svelte | Interactive tour page (lesson HTML + editor + runner) |
| web/src/routes/ide/+page.svelte | Refactors IDE page to use shared newIDE() setup and updates layout/styles |
| web/src/routes/docs/[...slug]/+page.svelte | Removes the old docs renderer route |
| web/src/routes/+page.svelte | Simplifies homepage and updates the example error display |
| web/src/lib/tour/pages/arrays.md | Adds arrays lesson page |
| web/src/lib/tour/pages/booleans.md | Adds booleans lesson page |
| web/src/lib/tour/pages/break-continue.md | Adds break/continue lesson page |
| web/src/lib/tour/pages/classes.md | Adds classes lesson page |
| web/src/lib/tour/pages/contents.md | Adds tour table of contents page |
| web/src/lib/tour/pages/floats.md | Adds floats lesson page |
| web/src/lib/tour/pages/for-loops.md | Adds for-loops lesson page |
| web/src/lib/tour/pages/functions.md | Adds functions lesson page |
| web/src/lib/tour/pages/hello-world.md | Adds hello-world lesson page |
| web/src/lib/tour/pages/if-else.md | Adds if/else lesson page |
| web/src/lib/tour/pages/infinite-loops.md | Adds infinite loops lesson page |
| web/src/lib/tour/pages/integers.md | Adds integers lesson page |
| web/src/lib/tour/pages/objects.md | Adds objects lesson page |
| web/src/lib/tour/pages/strings.md | Adds strings lesson page |
| web/src/lib/tour/pages/type-conversion.md | Adds type conversion lesson page |
| web/src/lib/tour/pages/variables.md | Adds variables lesson page |
| web/src/lib/tour/pages/while-loops.md | Adds while-loops lesson page |
| web/src/lib/tour/pages/stdlib-intro.md | Adds stdlib intro lesson page |
| web/src/lib/tour/pages/stdlib-math.md | Adds stdlib math lesson page |
| web/src/lib/tour/pages/stdlib-json.md | Adds stdlib json lesson page |
| web/src/lib/tour/pages/stdlib-time.md | Adds stdlib time lesson page |
| web/src/lib/tour/pages/stdlib-uuid.md | Adds stdlib uuid lesson page |
| web/src/lib/tour/pages/stdlib-crypto.md | Adds stdlib crypto lesson page |
| web/src/lib/tour/pages/stdlib-encoding.md | Adds stdlib encoding lesson page |
| web/src/lib/tour/pages/stdlib-os.md | Adds stdlib os lesson page |
| web/src/lib/tour/pages/stdlib-fs.md | Adds stdlib fs lesson page |
| web/src/lib/tour/pages/stdlib-http.md | Adds stdlib http lesson page |
| web/src/lib/tour/pages/stdlib-ffi.md | Adds stdlib ffi lesson page |
| web/src/lib/tour/data.ts | Implements lesson loading + prev/next navigation helpers |
| web/src/lib/navbar.svelte | Updates global nav to point “docs” at the new tour |
| web/src/lib/moduSyntax.ts | Adds a custom CodeMirror StreamLanguage tokenizer for Modu |
| web/src/lib/ide.ts | Adds shared CodeMirror editor setup (newIDE) |
| web/src/app.css | Makes code/pre styling global and adds ANSI class styling |
| web/package.json | Bumps modu-wasm dependency version |
| web/package-lock.json | Lockfile update for modu-wasm bump and regenerated metadata |
| README.md | Updates documentation URL to the tour |
| modu-wasm/src/lib.rs | Switches compilation/runtime error output from println! to output buffer |
| modu-wasm/Cargo.toml | Bumps wasm crate version to 3.1.1 |
| modu-wasm/Cargo.lock | Lockfile update for wasm + lang versions |
| lang/test | Updates sample code used for an error example |
| lang/src/stdlib/math.rs | Changes trig functions to interpret inputs as degrees |
| lang/README.md | Updates documentation URL to the tour |
| lang/Cargo.toml | Updates documentation URL + adjusts dependency versions |
| .github/workflows/deploy.yml | Removes BASE_PATH env usage during web build |
Files not reviewed (1)
- web/package-lock.json: Language not supported
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.