All Projects → nikitakit → xdbg

nikitakit / xdbg

Licence: other
Interactive live coding in Python

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to xdbg

Ipywebrtc
WebRTC for Jupyter notebook/lab
Stars: ✭ 171 (+584%)
Mutual labels:  ipython
Ipython
Official repository for IPython itself. Other repos in the IPython organization contain things like the website, documentation builds, etc.
Stars: ✭ 15,107 (+60328%)
Mutual labels:  ipython
React-Jupyter-Viewer
A react component to embed .ipyb notebooks in a blog or something
Stars: ✭ 50 (+100%)
Mutual labels:  ipython
Awesome Jupyter
A curated list of awesome Jupyter projects, libraries and resources
Stars: ✭ 2,523 (+9992%)
Mutual labels:  ipython
Jupyterhub Deploy Teaching
Reference deployment of JupyterHub and nbgrader on a single server
Stars: ✭ 194 (+676%)
Mutual labels:  ipython
popmon
Monitor the stability of a Pandas or Spark dataframe ⚙︎
Stars: ✭ 434 (+1636%)
Mutual labels:  ipython
Pudb
Full-screen console debugger for Python
Stars: ✭ 2,267 (+8968%)
Mutual labels:  ipython
ipython-auto-import
📥 Automatically import a Python library in IPython when you forget to import it
Stars: ✭ 55 (+120%)
Mutual labels:  ipython
Halo
💫 Beautiful spinners for terminal, IPython and Jupyter
Stars: ✭ 2,532 (+10028%)
Mutual labels:  ipython
yuuno
Yuuno = VapourSynth + Jupyter
Stars: ✭ 39 (+56%)
Mutual labels:  ipython
Juniper
🍇 Edit and execute code snippets in the browser using Jupyter kernels
Stars: ✭ 189 (+656%)
Mutual labels:  ipython
Algorithm
Leetcode 组队刷题
Stars: ✭ 193 (+672%)
Mutual labels:  ipython
dotfiles
My collection of dotfiles
Stars: ✭ 77 (+208%)
Mutual labels:  ipython
Dtale
Visualizer for pandas data structures
Stars: ✭ 2,864 (+11356%)
Mutual labels:  ipython
IPlantUML
A Python package which defines a PlantUML cell magic for IPython.
Stars: ✭ 85 (+240%)
Mutual labels:  ipython
Powerline
Powerline is a statusline plugin for vim, and provides statuslines and prompts for several other applications, including zsh, bash, tmux, IPython, Awesome and Qtile.
Stars: ✭ 12,989 (+51856%)
Mutual labels:  ipython
rk
The remote Jupyter kernel/kernels administration utility
Stars: ✭ 53 (+112%)
Mutual labels:  ipython
nbmerge
A tool to merge / concatenate Jupyter (IPython) notebooks
Stars: ✭ 75 (+200%)
Mutual labels:  ipython
hilda
LLDB wrapped and empowered by iPython's features
Stars: ✭ 99 (+296%)
Mutual labels:  ipython
jupyter boilerplate
Adds a customizable menu item to Jupyter (IPython) notebooks to insert boilerplate snippets of code
Stars: ✭ 69 (+176%)
Mutual labels:  ipython

xdbg

xdbg is an IPython extension that brings debugger features to the live coding environment. Works well with the IPython console, notebooks, and IPython-enabled text editors.

In [1]: %load_ext xdbg

In [2]: def greeting():
   ...:     message = "Hello, world!"
   ...:     return msg
   ...:

In [3]: val = greeting()
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-3-3eb1da36ee89> in <module>()
----> 1 val = greeting()

<ipython-input-2-4f6ba759b8d0> in greeting()
      1 def greeting():
      2     message = "Hello, world!"
----> 3     return msg

NameError: name 'msg' is not defined

In [4]: %break greeting ?
1   def greeting():
2       message = "Hello, world!"
3       return msg


In [5]: %break greeting 3
New breakpoint 0

In [6]: val = greeting()
[xdbg] Entered: <__main__>.greeting

In [7]: message
Out[7]: 'Hello, world!'

In [8]: return message
[xdbg] Exited: <__main__>.greeting

In [10]: val
Out[10]: 'Hello, world!'

Features

  • Set breakpoints and use the IPython REPL inside a function's scope
  • Move the REPL's scope into any imported module
  • Hotfix functions being debugged by specifying the correct behavior, instead of just watching them fail
  • Works well with text editor integration such as the hydrogen package for the Atom text editor

See http://kitaev.io/xdbg for more details.

Installation

Dependencies

  • Python 3.5 or 3.6
  • IPython

Note that older versions of Python are not supported.

To Install

Run pip install git+https://github.com/nikitakit/xdbg (or clone the repository and use setup.py)

You can activate xdbg inside an IPython kernel by running %load_ext xdbg. To load it automatically, list it in your IPython configuration file, e.g.

c.InteractiveShellApp.extensions = ['xdbg']

The configuration file is usually located at ~/.ipython/profile_default/ipython_config.py, and can be generated by running ipython profile create.

Documentation

For more details, see http://kitaev.io/xdbg

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].