framework
framework copied to clipboard
A static site generator for data apps, dashboards, reports, and more. Observable Framework combines JavaScript on the front-end for interactive graphics with any language on the back-end for data anal...
Problem: a developer might not see that a page errors (client-side), and might ship a broken dashboard. Two ideas for mitigation: * Notify the preview server of client-side errors; this...
What if we supported dynamic routes for data loaders, e.g. `customer/@[login].csv.ts` would match `customer/@mbostock.csv`, and would pass `--login=mbostock` as a command-line argument (parameter) to the data loader. This way you...
Since the TOC is rendered server-side, we’ll need to send a message down to the client if we want it to stay in-sync.
I’d like a way to opt-in to server-side JavaScript, akin to `"use client";` with [React Server Components](https://www.joshwcomeau.com/react/server-components/) (or more precisely `"use server";` with Server Actions, I guess?). I’m imagining something...
Otherwise if you edit an imported file, we won’t run the data loaders that import it.
We should support import assertions. This may require the [acorn-import-assertions plugin](https://github.com/xtuc/acorn-import-attributes#readme). Static imports with assertions look like this: ```js import data from "./data.json" assert {type: "json"}; ``` Dynamic imports with...
For anything that needs absolute URLs (#168, #178, #179). ~~The 404.html page (#174) should also somehow be aware of the server's root (does not need the **host** option, but the...
Like vitepress, build an items array from the list of pages, with a `transformItems` hook that allows the user to modify the array before passing it to https://www.npmjs.com/package/sitemap (with options)....
E.g., to turn {show} on by default for all JavaScript code blocks, either on the page (via frontmatter) or for the entire project (via the project config).
It’d be nice to have `foo.csv.sql` and somehow automatically run against a registered database, and the CLI would convert the output to CSV automatically. I don’t know how we’d register...