# Notebooks

Flyte is designed to work seamlessly with Jupyter notebooks, allowing you to write and execute workflows directly within a notebook environment.

## Iterating on and running a workflow

Download the following notebook file and open it in your favorite Jupyter environment: [interactive.ipynb](https://www.union.ai/docs/v2/union/user-guide/_static/public/interactive.ipynb)

<!-- TODO: add back when working
📥 [interactive.ipynb](https://www.union.ai/_static/public/interactive.ipynb)
-->

In this example we have a simple workflow defined in our notebook.
You can iterate on the code in the notebook while running each cell in turn.

Note that the [`flyte.init()`](https://www.union.ai/docs/v2/union/user-guide/api-reference/flyte-sdk/packages/flyte/_index#init) call at the top of the notebook looks like this:

```python
flyte.init(
    endpoint="https://union.example.com",
    org="example_org",
    project="example_project",
    domain="development",
)
```

You will have to adjust it to match your Union server endpoint, organization, project, and domain.

## Accessing runs and downloading logs

Similarly, you can download the following notebook file and open it in your favorite Jupyter environment: [remote.ipynb](https://www.union.ai/docs/v2/union/user-guide/_static/public/remote.ipynb)

<!-- TODO: add back when working
📥 [remote.ipynb](https://www.union.ai/_static/public/remote.ipynb)
-->

In this example we use the `flyte.remote` package to list existing runs, access them, and download their details and logs.

For a comprehensive guide on working with runs, actions, inputs, and outputs, see [Interact with runs and actions](https://www.union.ai/docs/v2/union/user-guide/task-programming/task-deployment/interacting-with-runs).

---
**Source**: https://github.com/unionai/unionai-docs/blob/main/content/user-guide/task-programming/notebooks.md
**HTML**: https://www.union.ai/docs/v2/union/user-guide/task-programming/notebooks/
