framework
runtime
framework | runtime | |
---|---|---|
9 | 2 | |
1,857 | 967 | |
7.5% | 0.8% | |
9.9 | 6.1 | |
about 5 hours ago | about 1 month ago | |
TypeScript | JavaScript | |
ISC License | ISC License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
framework
- Observable Framework – The best dashboards are built with code
- Observable Framework 1.1
-
Interesting Ideas in Observable Framework
Thanks for the feedback. We have a PR open to make it easier to register new interpreters (without needing to fallback to .sh or .exe); it’ll let you specify the interpreter associated with a given file extension (e.g., .kts for Kotlin). https://github.com/observablehq/framework/pull/935
As for inputs-driving-data-loaders, that does go against the grain a bit since Framework favors static data snapshots so that the built site is self-contained and performant. But a technique that works well is to generate Parquet files in data loaders representing the superset of data that you want to interact with, and then using DuckDB/SQL in the client to extract the subset you want to visualize. This tends to perform well, though obviously it’s dependent on the size of the superset you want to interact with.
- Observable Framework: A static site generator for data apps, dashboards, reports
-
Observable 2.0, a static site generator for data apps
From the Observable Framework point of view, you’re very welcome to use Apache ECharts or any other library instead of Observable Plot, since you can import whatever you like and it’s all just JavaScript.
Since there was a lot of interest in this thread, Mike added a page to the docs with an ECharts example: https://observablehq.com/framework/lib/echarts
There are two pieces of that example code specific to Framework: the html`` tagged template literal creates a DOM element (see https://github.com/observablehq/htl, also usable outside Framework), and the display function inserts it into the document above the code block (see https://observablehq.com/framework/javascript/display). Note that, whereas Observable Plot takes an options object and returns a DOM element, ECharts instead takes a DOM element and mutates it — but in general they should be equally easy to use in Framework.
Like Plot (and Vega-Lite, another great option), ECharts is also now one of Framework’s built-in “recommended libraries” (see https://observablehq.com/framework/javascript/imports#implic...), meaning that if you reference `echarts` Framework will lazy-load it for you. Adding that was a two-line diff: https://github.com/observablehq/framework/pull/811/files#dif.... But I wanna emphasize that Framework doesn’t have to explicitly “support” a given library for you to use it. “Supporting” in this case just means the convenience of saving you a one-line import statement. But don’t wait for our blessing!! Use whatever.
runtime
-
Interesting Ideas in Observable Framework
Observable themselves make that possible: https://github.com/observablehq/runtime
The official editor for making the notebooks in the first place is proprietary, and Dataflow seems to be an open source reimplementation (depending on the official runtime).
-
Productionizing Observable Notebooks with 3rd party Active Monitoring
Did you know that all notebooks are packed as ES6 modules, and you can run them inside the open-source Observablehq runtime programmatically? (see Advanced Embedding and Downloading) This means a notebook can find and run code found in another notebook. I call these types of notebooks metabooks as they are higher-order notebooks (notebooks whose input is another notebook).
What are some alternatives?
evidence - Business intelligence as code: build fast, interactive data visualizations in pure SQL and markdown
Sentry - Developer-first error tracking and performance monitoring
owid-grapher - A platform for creating interactive data visualizations
observable-ssta - PoC using Observable Framework to plot daily sea surface temperature anomalies
dataflow - An experimental self-hosted Observable notebook editor, with support for FileAttachments, Secrets, custom standard libraries, and more!
obsplot - Observable Plot bindings for R
observable-framework-experiments - Experiments with Observable Framework
datasette-dashboards - Datasette plugin providing data dashboards from metadata
opendata.cern.ch - Source code for the CERN Open Data portal
pyobsplot - Observable Plot in Jupyter notebooks and Quarto documents
htl - A tagged template literal that allows safe interpolation of values into HTML, following the HTML5 spec