Issues arising from the migration to Observable 2.0

Yes… the main reason we don’t do this currently is I didn’t want the cell toolbar appearing on Markdown, HTML, and other non-JavaScript cell modes. There is a cell toolbar for SQL cells (and data loaders in Desktop, which will come to the web eventually), and this cell toolbar allows you to declare an output which is equivalent to the cell name in Notebooks 1.0.

Not sure when you wrote your feedback, but we changed this yesterday in response to similar feedback. These cells should now show <empty>. Are you seeing something different?

As for imports displaying <empty>, we’re planning on adding an automatic inspector for imports, and for all other top-level variables too. We just haven’t had a chance to implement it yet. We’re going as fast as we can! I also want to link to the imported notebook, but I haven’t figured out exactly how that should work yet (because I think imports should let you inspect the imported values, not just be redundant with the corresponding source code). Probably the module specifier should be a clickable link in the cell editor.

Haha yes, that’s exactly the idea! Notebooks 1.0 (2018 standard library) uses an ancient version of Marked. Notebooks 2.0 (2026 standard library) uses the latest version of markdown-it and is CommonMark compliant. The purpose of the standard library is to let you choose which behavior you want, and to avoid breaking existing notebooks… or to reduce the number of ways they break, I should say.

Yes, we’re working on improving the mobile/narrow window layout; see this thread for related feedback. I’m not sure why the notebook would load zoomed-in, sorry.

I did this because I thought you’d want to decide whether to discard your tinkered edits or automatically save them, and I wasn’t sure which to do. I suppose your tinkered edits should be saved automatically? Or perhaps you want two different buttons to either save or discard?

Cells don’t have names in Notebooks 2.0, though some cell modes (the non-JavaScript ones) can have an output as discussed above. I do want to implement something like F2 in Zed where you can rename the variable at the current caret, and it should work with both local variables and cross-cell top-level variables.

Oops, that’s a CORS error related to the new origin. We can fix that; thank you for the report. We’d also like to have this feature on New Observable but there’s a long list of other stuff that we’ll likely need to do first. You’ll have to manually declare your desired license in the notebook body for now.

We did this because many (most!) forks are private, and yet the existence and magnitude of those forks at an aggregate level is a useful quality signal for the notebook.

We haven’t implemented comment locking yet, but it’s on the (long) list. If someone is behaving badly, please let us know so we can enforce etiquette.

Thanks for all the excellent, detailed, thoughtful feedback!