Public
Edited
Mar 23, 2024
71 stars
Insert cell
Insert cell
Insert cell
Insert cell
md`${content}`
Insert cell
Insert cell
devmode = false
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
devmode
? Inputs.table(labelled100, {
columns: ["thumbnail", "url", "title", "author", "score", "catagory"],
sort: "score",
reverse: true,
rows: 50,
format: {
thumbnail: (t) =>
html`<a href=${
data.find((d) => d.thumbnail === t)?.url
} target=_blank><img width=100% src=${t}>`
}
})
: undefined
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
viewof fetchMeta = Inputs.toggle({
label: "fetch doc meta? (network, slow)"
})
Insert cell
Insert cell
meta = FileAttachment("fetchedMeta.json").json()
Insert cell
Insert cell
Insert cell
Insert cell
viewof fetchLikes = Inputs.toggle({
label: "fetch notebook likes? (network, slow)"
})
Insert cell
fetchedLikes = {
if (!fetchLikes) return invalidation;
const likes = new Array(tweets.length);
for (let i = 0; i < tweets.length; i++) {
if (metadata[i]) {
const html = await (await fetchp(metadata[i].url)).text();

likes[i] = /"likes":(\d+)/.exec(html)[1];
}
}
return likes;
}
Insert cell
Insert cell
Insert cell
(await fetchp(metadata[147].url)).text()
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more