by tmcw on 2/15/24, 2:57 PM with 153 comments
by mbostock on 2/15/24, 5:17 PM
https://observablehq.com/framework/examples/api/
This technique of “just plot everything” (7.6M requests as a scatterplot) has revealed surprising insights we’ve used to optimize our servers and better control traffic. We’re also sharing a more traditional dashboard that visualizes the adoption of our open-source visualization library (and in some ways the successor to D3), Observable Plot:
https://observablehq.com/framework/examples/plot/
In addition to releasing Observable Framework, we’ve also made Observable free again for individuals (including private notebooks and databases connectors). Let me know if you have any questions!
by mbostock on 2/15/24, 5:44 PM
by kepano on 2/15/24, 7:30 PM
by xrd on 2/15/24, 5:30 PM
It probably goes without saying that EVERYONE should have a blog, and this approach from Observable means journalists everywhere can now easily create a dynamic and information-driven blog. It isn't a coincidence that Observable came from a guy that did amazing data visualizations at the NYTimes. We are on the precipice of a major power shift back to journalists and away from dubious corporations, and tools like this enable that transition.
(Shameless plug: Svekyll is going towards the same goal. Svekyll is a static site generator inspired by Jekyll. If you want to use Svelte in your blog, check it out. Svekyll bundles the incredible Apache ECharts so you can use echarts in your blog with a few lines of code (and no complicated build process). https://extrastatic.dev/svekyll/svekyll-cli. These are ideas I've been thinking about too.)
by simonw on 2/15/24, 6:58 PM
Things like data loaders which are ANY script that can output data (as JSON or something else) to standard output. Markdown files with ```js blocks in that get executed. The reinvention of the core Observable notebook to avoid custom syntax.
This is really big.
by ddanieltan on 2/15/24, 5:53 PM
1. Is the flexibility of languages used in data loaders/backend going to eventually come to the front end/ui? Or will the paradigm always be bring-your-own-language for the data loading but build your dashboard with observablejs/observable plot?
2. Considering ObservableJS is supported by Quarto, can we look forward to Observable Framework integrated with Quarto too? Or is the fact that the latest Quarto version also featured Dashboards more of a competitor to Framework?
3. Saw some comparison to Evidence.dev in the comments. I saw some shades of similarity with the markdown focused dev experience too but I recall Evidence chose Apache Echarts for their main charting library. Any thoughts of the pros/cons of Echarts vs ObservableJS/Plot?
by kuatroka on 2/15/24, 10:25 PM
1. Let's say I got a Sqlite/Duckdb database file on my server. It's got multiple tables and some of them 100M to 150M records. I want to create a plot/table that would have a slider/filter to only bring and show a slice of data at a time. Since it's statically generated data, how is this interactivity achieved? All the possible facets of data filtered by which ever way will be generated? Won't it be huge and how long will it take to generates this static data or is there an actual call back to the server to the duckdb file (I assume it works with .duckdb file too?)
2. If Observable Framework provides the front-end, does it mean I can use any auth library if I want to create a web site with a log in and subscription options?
3. If it's a static web page, does it mean that at any time a user views a chart, they will also be able to go to the Dev Tools and download the file with data that's behind the viz?
4. When (if you can share of course) is the planned release of Plot's interactions: zoom, pan, interactive legend, brush?
5. Deployment - with big parquet, sqlite, csv files, it's impossible to do CI/CO through github or vercel and such. Will your hosting services offer an option to host those files and runtimes to generate them?
Thanks
by jeffbee on 2/15/24, 5:09 PM
by RobinL on 2/15/24, 6:14 PM
To give a sense of the kind of performant, statically hosted interactive content that has only really been within my reach since using Observable, here are some examples:
Highly interactive vis: https://www.robinlinacre.com/visualising_fellegi_sunter/
Editable computations that flow through the document https://www.robinlinacre.com/computing_fellegi_sunter/
Multiple synced representations of data: https://www.robinlinacre.com/prob_bf_mw/ https://www.robinlinacre.com/partial_match_weights/ (half way down, under 'Understanding the partial match weight chart and waterfall chart)
Of course, there are a huge number of additional examples: https://observablehq.com/trending but i think the whole thing makes much more sense to the end-user when embedded (sadly at which point they don't even know it's observable!)
by 77ko on 2/15/24, 11:17 PM
Some requests:
Add simple examples and more clarity to the publish docs.
I assume most ppl would prefer to deploy via github actions[1], which the docs currently just link to a complex deploy file - can you please add some more documentation on this, or add an example of the simplest possible deploy file?
Suggestion: is it possible to use a interface (like in vercel) to connect to a github repo and build/publish on changes?
[1]: https://observablehq.com/framework/getting-started#deploying...
by j-pb on 2/15/24, 9:52 PM
by beefman on 2/15/24, 6:11 PM
by lf-non on 2/15/24, 5:14 PM
by 0cf8612b2e1e on 2/15/24, 5:13 PM
by rad_gruchalski on 2/15/24, 8:13 PM
Looks very nice!
by rogue7 on 2/15/24, 5:16 PM
I loved observable and wrote a couple of notebooks, it worked great ! I'm gonna try Framework asap !
by jwilber on 2/15/24, 6:01 PM
Are there any plans to allow existing observable notebooks to be deployed? For example, a one-click “deploy” button?
by austinpena on 2/15/24, 5:56 PM
by johnmorrison on 2/15/24, 10:59 PM
Somehow ideas like this emerge in waves seemingly with no coordination, kind of like what happened when Calculus was first invented
(Of course there's a lot of prior art here but it's interesting to see a specific jump towards polyglot single-file Markdown 'apps' and so on happen around the same time)
by mrtimo on 2/15/24, 5:52 PM
by cheptsov on 2/16/24, 7:59 AM
by farhanhubble on 2/16/24, 4:55 AM
by dleeftink on 2/16/24, 9:09 AM
by tetris11 on 2/16/24, 6:47 AM
Yeah Observable data pages look cool, but it really feels like excessive JS bloat for the features.
I think I miss throwing a D3 viz together without having to load an entire framework library.
by petre on 2/17/24, 6:12 AM
$ npm init @observablehq
node:internal/errors:477
ErrorCaptureStackTrace(err);
by kuatroka on 2/16/24, 10:10 AM
by one_buggy_boi on 2/16/24, 3:01 AM
by janice1999 on 2/15/24, 8:13 PM
by omneity on 2/15/24, 10:20 PM
Thank you and congrats on the release!
by nrjames on 2/15/24, 9:09 PM
by nalgeon on 2/15/24, 5:56 PM
by fburnaby on 2/16/24, 12:06 PM
by vwkd on 2/16/24, 4:19 PM
by CJefferson on 2/15/24, 7:59 PM
by yodon on 2/15/24, 5:11 PM
You do realize that naming only makes sense inside your own company, right? To everyone who uses it, it's "a" framework or "Observable's framework". No consumer of the framework is going to refer to it as "Framework" without ridiculous amounts of confusion resulting.
by coolca on 2/15/24, 11:02 PM
by terpimost on 2/15/24, 5:19 PM
by greenie_beans on 2/15/24, 6:49 PM
by foolswisdom on 2/15/24, 4:56 PM
by lloydatkinson on 2/15/24, 6:30 PM