From 0b26dedecca18ace10c9740947c3703dda3e04d8 Mon Sep 17 00:00:00 2001
From: j-atkins <106238905+j-atkins@users.noreply.github.com>
Date: Thu, 24 Sep 2026 10:23:12 +0200
Subject: [PATCH 1/3] add binder welcome page
---
.binder/postBuild | 18 +++++++++++++++++-
.binder/preview.md | 21 +++++++++++++++++++++
2 files changed, 38 insertions(+), 1 deletion(-)
create mode 100644 .binder/preview.md
diff --git a/.binder/postBuild b/.binder/postBuild
index c242f1c..1cf2d2f 100644
--- a/.binder/postBuild
+++ b/.binder/postBuild
@@ -40,4 +40,20 @@ while IFS= read -r file_path || [ -n "$file_path" ]; do
exit 1
fi
-done < "$LIST_FILE"
\ No newline at end of file
+done < "$LIST_FILE"
+
+# landing page: copy to the workspace root (Jupyter hides dot-directories such as .binder/)
+cp .binder/preview.md preview.md
+
+# open markdown files as rendered previews (rather than raw source) in JupyterLab
+LAB_SETTINGS_DIR="$(jupyter lab path | awk -F': *' '/Application directory/ {print $2}')/settings"
+mkdir -p "$LAB_SETTINGS_DIR"
+cat > "$LAB_SETTINGS_DIR/overrides.json" <<'JSON'
+{
+ "@jupyterlab/docmanager-extension:plugin": {
+ "defaultViewers": {
+ "markdown": "Markdown Preview"
+ }
+ }
+}
+JSON
diff --git a/.binder/preview.md b/.binder/preview.md
new file mode 100644
index 0000000..ee3c3e8
--- /dev/null
+++ b/.binder/preview.md
@@ -0,0 +1,21 @@
+
+
+
+
+# Welcome aboard! 🚢
+
+This is your **VirtualShip post-processing workspace**: a JupyterLab environment with the Python packages and tutorial notebooks needed to analyse and visualise your VirtualShip simulation results.
+
+## Getting started
+
+- Use the file browser on the left to explore the workspace. The tutorial notebooks are in the `tutorials/` folder.
+- To work with your own results, upload them using the **Upload** button (↑) at the top of the file browser, or drag and drop them in.
+- Double-click a notebook to open it, then run the cells with **Shift + Enter**.
+
+## Good to know
+
+- This workspace is **temporary**. It will shut down after a period of inactivity and anything you have created or uploaded will be lost, so remember to download anything you want to keep (right-click a file → **Download**).
+
+## Need help?
+
+Full instructions are available in the [VirtualShip documentation: Post-processing Workspace Guide](https://virtualship.readthedocs.io/en/latest/user-guide/tutorials/binder_guide.html).
From ea4155043caee0161b4e213620e8d09a6b1c678e Mon Sep 17 00:00:00 2001
From: j-atkins <106238905+j-atkins@users.noreply.github.com>
Date: Thu, 24 Sep 2026 10:23:28 +0200
Subject: [PATCH 2/3] codespaces landing page
---
.devcontainer/devcontainer.json | 11 ++++++++++-
.devcontainer/preview.md | 26 ++++++++++++++++++++++++++
2 files changed, 36 insertions(+), 1 deletion(-)
create mode 100644 .devcontainer/preview.md
diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
index 612066c..be7e70c 100644
--- a/.devcontainer/devcontainer.json
+++ b/.devcontainer/devcontainer.json
@@ -6,10 +6,19 @@
// TODO: point back to main when performance branch is merged into main
"postCreateCommand": "pip install git+https://github.com/Parcels-code/Parcels.git@main && pip install git+https://github.com/Parcels-code/virtualship.git@performance",
"customizations": {
+ "codespaces": {
+ "openFiles": [
+ ".devcontainer/preview.md"
+ ]
+ },
"vscode": {
"settings": {
"python.defaultInterpreterPath": "/opt/venv/bin/python",
- "python.terminal.activateEnvironment": true
+ "python.terminal.activateEnvironment": true,
+ // render the landing page as a markdown preview rather than raw source
+ "workbench.editorAssociations": {
+ "**/.devcontainer/preview.md": "vscode.markdown.preview.editor"
+ }
},
"extensions": [
"ms-python.python",
diff --git a/.devcontainer/preview.md b/.devcontainer/preview.md
new file mode 100644
index 0000000..b2ad696
--- /dev/null
+++ b/.devcontainer/preview.md
@@ -0,0 +1,26 @@
+
+
+
+
+# Welcome aboard! 🚢
+
+This is your **VirtualShip simulation workspace**: a cloud-based environment with `VirtualShip` and its dependencies already installed, ready for you to plan and run your virtual expedition.
+
+## Getting started
+
+- Open a terminal via the menu (**Terminal → New Terminal**) if one is not already open at the bottom of the screen.
+- Check everything is working by running:
+
+ ```bash
+ virtualship --help
+ ```
+
+- Use the file explorer on the left to browse, create and edit your expedition files.
+
+## Good to know
+
+- This workspace runs in the cloud and will pause after a period of inactivity. Your files will persist between sessions.
+
+## Need help?
+
+Full instructions are available in the [VirtualShip documentation: Simulation Workspace Guide](https://virtualship.readthedocs.io/en/latest/user-guide/tutorials/codespaces_guide.html).
From 5d92127640d613527a8251eb3254bd2c0aac9fff Mon Sep 17 00:00:00 2001
From: j-atkins <106238905+j-atkins@users.noreply.github.com>
Date: Thu, 24 Sep 2026 10:23:44 +0200
Subject: [PATCH 3/3] link binder landing page to button link
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index e63ba83..92996b6 100644
--- a/README.md
+++ b/README.md
@@ -23,4 +23,4 @@ Full details on how to use this workspace can be found in [VirtualShip documenta
> [!TIP]
> Click the button below to launch a VirtualShip post-processing workspace in your browser using Binder:
>
->[](https://mybinder.org/v2/gh/Parcels-code/virtualship-workspace/HEAD)
\ No newline at end of file
+>[](https://mybinder.org/v2/gh/Parcels-code/virtualship-workspace/HEAD?urlpath=lab/tree/preview.md)
\ No newline at end of file