marimo is an open-source reactive notebook for Python - reproducible, git-friendly, executable as a script, and shareable as an app.
Run one cell and marimo reacts by automatically running affected cells, eliminating the error-prone chore of managing notebook state. marimo's reactive UI elements, like dataframe GUIs and plots, make working with data feel refreshingly fast, futuristic, and intuitive. marimo notebooks are pure Python and stored as .py files. Version with git, run as Python scripts, import symbols from a notebook into other notebooks or Python files, and lint or format with your favorite tools. You'll always be able to reproduce your collaborators' results. Notebooks are executed in a deterministic order, with no hidden state — delete a cell and marimo deletes its variables while updating affected cells.
Collaborate on notebooks with git: small changes yield small diffs. Goodbye JSON, hello Python! Want to share outputs? Export to static HTML, or serve your notebook as a web app with the marimo CLI. The marimo editor comes with GitHub Copilot, autocomplete, hover tooltips, vim keybindings, code formatting, debugging panels, and extensive hotkeys. marimo also ships with a CLI, a library, and a VS Code extension. Learn more at our docs.
scare is a multi-arch assembly REPL and emulator for your command line.
There aren't many modern assembly REPLs out there. The ones that do exist are either opaque webapps, or are tied to specific architecture or platform. scare was built for people who want to test, experiment, or otherwise play with assembly code. All assembled code is run in an emulator, which executes only the code you give it. The multi-architecture design for the underlying scarelib library is meant to be modular, allowing for new architectures to be added quickly.
A shell which acts as a better interactive Python interpreter than the standard Python environment. iPython is designed more for experimentation and playing with ideas prior to implementation than it is for actually developing code. It also supports being embedded in other software for the purpose of extensibility. It even makes it easy to prototype and test GUIs written in Python.