30 open-source projects similar to ipython/ipython, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Ipython alternative.
This project is a browser-based interactive computing environment and data science IDE. It serves as a literate programming tool that allows users to create documents combining live code, mathematical equations, visualizations, and narrative text. As a polyglot notebook interface, it connects to various language kernels to execute code and render output within a single interface. The application distinguishes itself by separating the frontend interface from a remote compute engine through a language-agnostic kernel interface. This allows it to support multiple programming languages while main
Pry is a programmable Ruby shell, REPL console, and runtime developer environment. It serves as a debugging toolkit for inspecting object state, navigating bindings, and evaluating code within a running Ruby program. The project differentiates itself through advanced introspection and live iteration capabilities. It allows users to inject an interactive console into a running program at specific points to inspect local state and navigate different object scopes. It further enables live code iteration by integrating with external system editors to modify and reload method definitions without r
ptpython is a programmable Python interactive shell and development console. It functions as an enhanced REPL for executing Python code and managing runtime state, featuring support for an asynchronous event loop that allows for top-level await statements. The environment is highly customizable, offering pluggable keybinding schemes and adjustable interface appearances. It provides a programmable interface that can be embedded into other applications to facilitate runtime debugging and live state inspection. The shell includes a suite of developer tools for interactive coding, such as automa
This project is an interactive data science environment that combines code execution, rich media visualization, and narrative documentation into a persistent, browser-based platform. It serves as a comprehensive educational resource for scientific computing, providing a framework for iterative data analysis and machine learning prototyping. The environment is distinguished by its focus on high-performance numerical computing, utilizing vectorized array operations and memory-mapped data structures to handle large-scale computations efficiently. It features a unified estimator interface that st
PsySH is an interactive read-eval-print loop and shell environment for PHP. It functions as a runtime debugger and application inspector, allowing for the execution of PHP code in real-time to experiment with snippets and inspect live application state. The project is distinguished by its ability to be embedded directly into running PHP applications for live troubleshooting. It provides specialized tools for state manipulation, including the ability to bypass visibility restrictions to inspect private or protected object members and the capacity to reload code without restarting the session.
Positron is a data science integrated development environment and AI-powered code editor designed for polyglot development, specifically supporting Python and R. It functions as a remote compute workspace that separates the user interface from the execution kernel via SSH or container integration. The environment features a deep integration of large language models that provide context-aware suggestions and automated data analysis by accessing real-time interpreter state, in-memory objects, and plot outputs. It distinguishes itself through a polyglot runtime bridge that enables cross-language
ptpython is an enhanced interactive Python REPL and asynchronous console built on the prompt-toolkit library. It provides a customizable command-line interface for executing Python code with support for multiline editing, autocompletion, and syntax highlighting. The environment supports top-level await statements and asynchronous execution via an integrated event loop. It allows for extensive interface customization, including configurable key bindings for Vi or Emacs navigation and personalized color schemes. The shell includes capabilities for real-time syntax validation and the execution
aws-shell is an interactive command-line environment designed for executing AWS CLI commands. It functions as a wrapped shell that allows users to run provider-specific infrastructure commands and local system processes within a single interface. The tool distinguishes itself through fuzzy-matching autocomplete for commands and resource IDs, along with dynamic inline documentation and help panels that provide immediate syntax guidance. It enables rapid context changes by allowing users to switch between different AWS identity profiles during a single session. The environment includes session
Kakoune is a scriptable, modal text editor for the terminal that employs a client-server architecture. This model allows multiple terminal windows to connect to a single editing session, providing a programmable environment for managing source code and text. The editor is distinguished by its selection-first logic, where a text region must be predefined before a command is applied. It leverages regular expressions to manage multiple cursors and perform bulk edits across complex text patterns, and it integrates deeply with the shell by piping selections through external programs and filters.
Nushell is a cross-platform shell and programming language designed to treat all input and output as structured data rather than raw text streams. By enforcing data types and command signatures, it provides a consistent environment for building robust, pipeline-oriented workflows. The shell allows users to chain commands that pass structured objects between stages, enabling complex data processing and automation tasks that remain predictable across different operating systems. What distinguishes the project is its focus on interactive data exploration and modular extensibility. Users can quer
Xonsh is a cross-platform command-line interface shell and automation tool that integrates a full Python interpreter with standard shell capabilities. It functions as a Python-powered environment where users can mix native programming logic and external subprocesses within a single shared namespace. The shell is designed for extensibility, supporting a plugin system, custom event hooks, and the ability to import configurations from other shells such as Bash or Zsh. It differentiates itself by representing system environment variables and paths as mutable Python objects, allowing for programma
Awesome Emacs is a curated directory of community-driven resources, packages, and configurations designed to extend the functionality of the Emacs text editor. It serves as a comprehensive index for users seeking to transform their editor into a specialized development environment or a highly personalized productivity workspace. The collection highlights tools that enable deep customization of the Emacs experience, ranging from ergonomic key binding schemes and visual interface themes to advanced window management and navigation utilities. It provides a centralized reference for discovering e
This project is an educational resource and a collection of instructional materials for performing data manipulation and statistical analysis using Python. It provides a comprehensive set of guides and code examples for using the Pandas, NumPy, and Matplotlib libraries to analyze structured data. The resource includes a dedicated guide for reshaping, cleaning, and aggregating tabular data and time series via Pandas, alongside a reference for high-performance vectorized operations and linear algebra using NumPy. It also features tutorials for creating publication-quality charts, distribution p
Spyder is a scientific integrated development environment designed for scientific computing and interactive Python programming. It functions as a static analysis code editor and an interactive Python console, providing a specialized environment for writing and analyzing code for science and engineering. The platform distinguishes itself as an extensible development tool, utilizing a modular plugin architecture that allows for the addition of custom features or the embedding of core components into other software. It features a dedicated debugger and profiler for tracing code execution and mea
django-extensions is a specialized toolset for the Django framework providing utilities for database visualization, application debugging, development environment management, and custom management command execution. It functions as a collection of tools designed to automate development tasks and inspect the internal state of an application. The project provides a database visualization tool for generating diagrams of data models and comparing schemas to map complex relationships. It also includes a debugging utility to intercept email traffic and audit user permissions to troubleshoot applica
Jupyter is an interactive computing platform and data science workspace designed for creating documents that combine live code, equations, visualizations, and narrative text. It provides a polyglot notebook interface that connects a frontend user interface to various backend language engines through a standardized kernel protocol for real-time code evaluation. The system enables polyglot programming workflows, allowing multiple different programming languages to run within a single interface. It supports computational document authoring and data science exploration by allowing users to execut
Rodeo is an interactive Python notebook environment and integrated development environment designed for data science. It provides a workspace for combining executable code, rich text, and data visualizations within a single document to manage the lifecycle of research scripts. The platform facilitates data science workflow management, covering the process from initial data exploration to final model execution. It supports the development of Python scripting environments tailored for data analysis, modeling, and iterative hypothesis testing. The system utilizes a cell-based document structure
Hydrogen is an interactive code execution environment and text editor integration that enables the execution of individual lines or blocks of code with immediate inline output. It functions as a polyglot interactive notebook and a remote kernel orchestrator, allowing users to run code via Jupyter kernels and render rich media, such as plots, images, and video, directly within the editor. The system distinguishes itself through remote kernel management, routing code execution to external containers or remote servers via network sockets. It maintains a stateful programming environment where lan
Yaegi is a Go language interpreter and embedded scripting engine that executes Go source code at runtime without requiring a separate compilation step. It provides a mechanism for evaluating Go expressions and files dynamically, functioning as both a library for compiled applications and a standalone read-eval-print-loop environment. The project enables the integration of dynamic Go scripts into compiled programs to allow for runtime extensibility and plugin development. It facilitates the conversion of interpreted symbols from evaluated scripts into usable interfaces and types within a compi
Vorpal is a Node.js interactive CLI framework and terminal user interface library used to build extensible command-line shells. It functions as an interactive command-line parser that converts string input into executable functions, managing the lifecycle of terminal sessions and command routing. The framework is distinguished by a plugin-based extension architecture that allows external modules to register new commands, shared behaviors, and complete command suites into the core environment. It supports the creation of custom shell environments with specialized namespaces and a system for pe
Sbt is a JVM build tool and dependency management system designed for Scala and Java. It functions as a multi-project build orchestrator that manages the compilation of source code, resolves external libraries from remote repositories, and packages binaries for distribution. The project is distinguished by its interactive build system, which provides a read-eval-print loop for real-time state inspection and task execution. It utilizes a dependency-graph based execution model to process tasks and maintains a type-safe key-value store for dynamic build configuration. Its capabilities cover JVM
HTTP Prompt is an interactive command-line HTTP client built on top of HTTPie, providing a read-eval-print loop (REPL) shell for exploring and testing APIs. It wraps HTTPie's request-building and response-parsing capabilities into a persistent session that tracks current URL, headers, and other context, enabling rapid iteration on API calls without leaving the terminal. The tool distinguishes itself through its interactive shell environment, which includes context-aware tab completion for HTTP methods, URLs, headers, and body parameters, along with terminal-based syntax highlighting for both
Gridstudio is a web-based data science integrated development environment that combines a programmatic spreadsheet interface with an interactive Python environment. It functions as a system for organizing and deploying isolated data workspaces to handle data science tasks and storage. The platform merges spreadsheet data management with an execution engine for formulas and Python code, allowing for programmatic spreadsheet manipulation. It enables users to run interactive scripts and terminal sessions to clean, transform, and manage datasets within a browser. The environment supports Linux s
This project is a high-performance static type checker and comprehensive development toolkit for Python. It functions as a core analysis engine that identifies type inconsistencies and enforces code correctness, while simultaneously providing a language server implementation to deliver real-time diagnostics and intelligence directly within development environments. The tool distinguishes itself through a parallelized execution engine that maximizes performance across large-scale codebases and monorepo structures. It supports gradual type adoption, allowing developers to integrate type checkin
This project is an uncompromising, deterministic code formatter for Python. It functions by parsing source code into an abstract syntax tree and regenerating it according to a rigid, opinionated set of style rules. By automating the formatting process, it eliminates manual style debates and configuration overhead, ensuring that code remains consistent across entire projects regardless of the original input. The tool distinguishes itself through its focus on speed and seamless integration into development workflows. It utilizes content-based file caching and parallel processing to maintain hig
JupyterHub is a multi-user platform for hosting and managing isolated Jupyter notebook server instances on a single system or cluster. It serves as a notebook server orchestrator that spawns and monitors individual computing environments on demand. The system uses a plugin-based spawner interface to launch these environments across diverse infrastructure, including local processes, containers, or cloud clusters. It integrates with external identity providers and supports pluggable authentication to verify user identities and secure access. The framework includes centralized administration to
Marimo is a reactive Python notebook environment and data science integrated development environment. It functions as a scripting tool that maintains state consistency by automatically tracking variable dependencies and re-executing downstream code blocks whenever upstream inputs are modified. The platform distinguishes itself by storing notebooks as standard, portable Python scripts rather than proprietary formats, ensuring compatibility with version control systems. It integrates artificial intelligence to assist with code generation and debugging based on the current execution context, whi
Julia is a high-performance, dynamic programming language designed for scientific computing, data analysis, and complex mathematical modeling. It provides a specialized runtime environment that manages memory allocation and parallel processing, utilizing a just-in-time compiler to translate high-level source code into optimized machine instructions. This architecture allows the language to achieve execution speeds comparable to statically compiled languages while maintaining the flexibility of a dynamic scripting environment. The language is distinguished by its multiple dispatch system, whic
qsv is a high-performance command line toolkit for querying, transforming, and analyzing comma-separated value files. It functions as a data wrangling interface and a tabular data profiler, featuring a query engine capable of executing SQL statements and joins directly on flat files without requiring a database. The project is distinguished by its ability to process massive datasets that exceed available system memory. This is achieved through disk-based external memory processing, including multithreaded merge sorting, on-disk hash tables for deduplication, and lightweight file indexing for
Oils is a Unix shell interpreter and scripting language runtime that combines a modern shell language with POSIX and Bash compatibility. It functions as a structured data shell, integrating JSON and J8 formats to manage complex data without relying on string parsing. The system is distinguished by a C++ transpiled interpreter that converts a subset of Python source code into strongly typed C++ for high-performance execution. It features a garbage-collected typed runtime that supports prototype-based polymorphism, lexical closures, and reference-based variable mutation. To decouple shell logic