- Python
- TypeScript
The Python sandbox runs Python 3.13 and comes with the following libraries pre-installed:
The
Every cell has access to a generated Query your lake directly:Use pyiceberg for low-level catalog operations:
| Library | Purpose |
|---|---|
polars | DataFrame processing |
pandas | DataFrame processing |
duckdb | In-process SQL |
pyiceberg | Iceberg catalog client |
numpy | Numerical computing |
matplotlib | Plotting |
pyarrow | Arrow/Parquet I/O |
The oleander module
Every cell has access to a generated oleander module that wires your catalog and DuckDB connection automatically:BigQuery
If you have BigQuery connections configured, the DuckDBbigquery extension is installed automatically. BigQuery tables are accessible as connection_name.dataset.table:State persistence
Variables persist across cell executions within a session. If you define a DataFrame in one cell, it is available in the next. State is stored in/tmp/_oleander_state.pkl and survives cell reruns.Output
DataFrames are displayed as structured tables. Matplotlib figures are rendered as inline SVG. Other values are printed as text.Code generation
Each cell has an assist button that generates code based on your prompt, aware of your available libraries and catalog structure. Generated code appears as a new cell ready to run.Spark cells
Submit inline PySpark code as a managed Spark job directly from a task cell. The job runs in theoleander.tasks namespace and returns a run ID you can track in the platform. Lineage from Spark cell runs is captured automatically.