Add 2 new notebooks + migrate 6 existing koaning notebooks into gallery-examples - #68
Merged
Conversation
Copies two notebooks from koaning/notebooks (PRs #107, #108) into the gallery-examples repo so the marimo.io gallery can reference first-party copies: - notebooks/math/arnold-cat-map.py — interactive Arnold's cat map - notebooks/dashboard/etf-compare.py — country ETF mix vs FTSE All-World Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
🟡 Changes recommended
New notebooks appear to be missing required gallery session artifacts/README entries, and etf-compare uses an unpinned git dependency that is not reproducible.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
Adds two new marimo notebooks to the gallery examples repository so the marimo.io gallery can reference first-party copies rather than external/personal repos.
Changes:
- Added
arnold-cat-mapmath notebook with an anywidget-powered visualization of Arnold’s cat map and recurrence period. - Added
etf-comparedashboard notebook to compare a weighted set of country ETFs against the VWCE benchmark using justETF data.
File summaries
| File | Description |
|---|---|
| notebooks/math/arnold-cat-map.py | New interactive math notebook implementing Arnold’s cat map with a custom anywidget canvas renderer. |
| notebooks/dashboard/etf-compare.py | New dashboard notebook that fetches/caches ETF quotes and renders interactive Vega-Lite return and drawdown charts. |
Review details
- Files reviewed: 2/2 changed files
- Comments generated: 4
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Comment on lines
+3
to
+7
| # dependencies = [ | ||
| # "marimo", | ||
| # "polars==1.37.1", | ||
| # "justetf-scraping @ git+https://github.com/druzsan/justetf-scraping.git", | ||
| # ] |
Comment on lines
+291
to
+292
| if __name__ == "__main__": | ||
| app.run() |
Comment on lines
+296
to
+297
| if __name__ == "__main__": | ||
| app.run() |
| $$\begin{pmatrix} x' \\ y' \end{pmatrix} = \begin{pmatrix} 2 & 1 \\ 1 & 1 \end{pmatrix}\begin{pmatrix} x \\ y \end{pmatrix} \pmod{N}.$$ | ||
|
|
||
| This operation has a fun twist: if you keep applying it the tiles must | ||
| eventually return home.That recurrence **period depends only on $N$**, |
These six notebooks are already in the marimo.io gallery but reference koaning/notebooks. Copy them here so the gallery can point at first-party marimo-team copies: - notebooks/algorithms/evoc-fashion.py (Nested Clusters with EVoC) - notebooks/math/recursive-images.py (Recursive Images) - notebooks/algorithms/elastic-net-tsp.py (Elastic Net for the TSP) - notebooks/math/winners-curse.py (The Winner's Curse) - notebooks/algorithms/circle-genetic-art.py (Circle Genetic Art) - notebooks/algorithms/char-embeddings-2d.py (2D Character Embeddings) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Generate __marimo__/session/*.py.json snapshots via 'marimo export session' for the two new notebooks and the five newly-migrated ones, and add a README table row for each under its category (Algorithms, Math, Dashboard). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
marimo 0.24 moved current_notebook_code_hashes from marimo._server.export._session_cache to marimo._export._session_cache, which broke the freshness check on every PR. Import the new path and fall back to the old one for compatibility. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.
Consolidates marimo.io gallery notebooks onto the marimo-team side instead of referencing
koaning/notebooks.New notebooks (from koaning/notebooks PRs #107, #108)
notebooks/math/arnold-cat-map.py— interactive Arnold's cat map (WASM-friendly)notebooks/dashboard/etf-compare.py— country ETF mix vs FTSE All-World (VWCE); quotes from justETFMigrated existing gallery notebooks (were pointing at koaning/notebooks)
notebooks/algorithms/elastic-net-tsp.py— Elastic Net for the TSPnotebooks/algorithms/circle-genetic-art.py— Circle Genetic Artnotebooks/algorithms/char-embeddings-2d.py— 2D Character Embeddingsnotebooks/math/recursive-images.py— Recursive Imagesnotebooks/math/winners-curse.py— The Winner's Curse(
evoc-fashion.py/ "Nested Clusters with EVoC" is already on main, so it is not re-copied here — only the marimo-cloud gallery yaml gets re-pointed for it.)Also included
__marimo__/session/<name>.py.jsonsnapshot for each of the seven notebooks, generated withmarimo export session --sandbox.validate-sessions.pypasses the existence and error-pattern checks.All notebook
.pyfiles are copied unchanged from koaning/notebooks. After this merges, the marimo-cloud gallery yaml is re-pointed at these paths.🤖 Generated with Claude Code