Reactive notebooks
in Roc
Write Roc code alongside notes, equations, and images. When you change a value, all dependent results update automatically.
Notebooks can also be run as regular Roc apps or exported as Markdown documents.
Runs in your browser, with no installation or account required.
Recent notebooks
In this browserLoading recent notebooks…
Demos
- Simple reactive notebookChange a value and see dependent cells recompute.
- Coding puzzle: longest streakComplete a function using the examples, checks, and hints.
- Rich Outputs and WidgetsCreate Markdown, tables, images, and widgets that communicate with Roc.
- Interactive charts with PlumePlot a sine wave and change its frequency with a slider.
- A café sales report from CSVInspect an attachment, decode it with roc-parser, and replace the data.
- Meeting scheduler with roc-timeFind a shared meeting time using a Roc date and time package.
- A garden plan from a GitHub GistA small notebook using a relative Roc package, supporting modules, and planting notes. Requires internet.
What can you use it for?
- Learning Roc
- Try expressions, inspect results, and keep notes next to the code.
- Learning interactively
- Explain a concept with text, equations, and code that readers can change.
- Data exploration
- Transform data and compare results as you refine your calculations.
- Exploring Roc packages
- Import a package and try its functions in a notebook, with examples you can save and share.
- Literate programming
- Keep explanations beside production code and save the notebook as a runnable Roc script.
Planned platforms
We plan to add Roclet platforms for specific uses, such as turtle graphics for teaching programming and tools for creating and testing web services. Each platform would provide the capabilities and interface that suit the task.
Prefer running your own server?
Most people can use Roclet right here. For a local copy, download the optional server for macOS, Windows, or Linux.
Install the Roclet server