AGILAB for Voila users
Voila users do not need a platform migration pitch first. The useful first question is smaller:
Can I keep a notebook dashboard as the familiar interface, then add app boundaries, replay, and evidence when the workflow becomes important?
AGILAB’s current answer is a lightweight bridge: a Voila-shaped notebook,
widget-to-argument mapping, a hide-code manifest, an app-view plan, and explicit
evidence. This is not a full Voila server integration and it is not yet an
agilab[voila] runtime extra.
What ships now
The packaged voila_notebook_proof preview creates a notebook-dashboard proof
without adding Voila or ipywidgets as required dependencies:
uv --preview-features extra-build-dependencies run python src/agilab/examples/voila_notebook_proof/preview_voila_notebook_proof.py
It writes:
~/log/execute/voila_notebook_proof/dashboard.ipynb
~/log/execute/voila_notebook_proof/widget_to_args.json
~/log/execute/voila_notebook_proof/hidden_code_manifest.json
~/log/execute/voila_notebook_proof/agilab_app_view_plan.json
~/log/execute/voila_notebook_proof/dashboard_app_preview.html
~/log/execute/voila_notebook_proof/voila_notebook_evidence.json
Open dashboard_app_preview.html to inspect the static adoption plan. Open
dashboard.ipynb to see the notebook shape that a future Voila runtime could
serve.
Why this is the right first bridge
Voila already gives notebook users a direct path from notebooks to dashboards. AGILAB should not replace that habit. It should add the missing engineering boundary only when the notebook becomes a reusable application.
The bridge keeps the responsibilities clear:
User concern |
AGILAB response |
|---|---|
I already have a notebook dashboard. |
Keep the notebook as an app-owned asset. |
I want user controls. |
Map stable widgets to explicit app arguments. |
I want cleaner presentation. |
Record a hide-code manifest as data. |
I need reproducibility. |
Hash the notebook, sidecars, and evidence bundle. |
I do not want a new deployment story yet. |
Use files first; keep Voila serving as an optional later runtime. |
Product direction
The next product step is a focused command and UI path:
agilab notebook-proof dashboard.ipynb --app-name sales_dashboard
That should:
read a user-selected notebook;
extract stable widget defaults into app arguments;
preserve app-specific notebook and UI code inside the app folder;
write an app-view plan and evidence bundle;
optionally serve through Voila only when the user installs the Voila extra.
The positioning is intentionally narrow:
Voila turns notebooks into apps. AGILAB turns notebook apps into reproducible, evidence-backed workflows.
What remains roadmap
The preview does not yet claim:
a running Voila server from the AGILAB web UI;
an
agilab[voila]extra;automatic arbitrary notebook import into a full app project;
ipywidgets execution during preview generation;
multi-user dashboard deployment.
Those are useful later only if notebook-dashboard users care about the bridge. For now, the adoption message should stay simple:
Keep the notebook dashboard. Use AGILAB to make the workflow replayable, auditable, and easier to promote into an app.