VS Code has been making progress to support Jupyter notebooks (https://code.visualstudio.com/docs/python/jupyter-support), but it's not quite there yet. Code completion works, but other features such as user snippets are missing, and it can be quite laggy. Apparently that's because the VS Code team has to reimplement a lot of stuff for Jupyter specifically (compared to adding support for Rust or Go with a language server).
VSCode Insiders has huge improvements in this area. I switched to Insiders specifically for this and it’s great. You get linting, auto-formatting, vim-mode keyboard input, and even git diff for .ipynb. I don’t run Jupyter’s browser UI at all now.
For those that don't know, VSCode Insiders seems to be some beta/alpha channel of releases with features that are under-development. So I guess that means it will end up in VSCode stable in a little bit.
Another great local-first wiki tool is Obsidian (https://obsidian.md/). Each page is just a markdown file in a dedicated folder. They have backlinks and a bunch of plugins.
I wrote a tool myself :). Like many other wiki tools, at the core of it are a bunch of web pages. In my case each page is a note (which is preferably as atomic of a concept as can be) that consists of a section for the note and a section for exercises (each with an id) related to that note. I can then parse those exercises and feed them into a spaced repetition algorithm and practice web app.
Thank you, I somehow missed that link. For reference: the crossbones refer to the "xxx" in the name of the original server (xxx.lanl. gov). The smiley and the green background don't seem to have any specific meaning though.