Hello!
Doing step-by-step running has three parts:
1) Being able to pause interpretation of the code.
2) Knowing when to pause interpretation of the code.
3) Highlighting blocks in the workspace.
So first you need to check if (1) is true. Can Jupypter notebooks pause interpretation? If yes, then you're good. If not, then you would need to find or implement another python interpreter.
Next you need to know when to pause interpretation of the code. You probably want to pause the interpreter before each new block. So you can add a
statement prefix that prepends code to each statement to let you know when to pause interpretation. Check out the
step execution demo for more info.
Finally for highlighting the block, you can call `workspace.highlightBlock(blockId)` where the `blockId` is the ID of the block you want to hightlight.
I hope that helps! If you have any further questions please reply =)
--Beka