# Blank thumbnails

**URL:** https://talk.observablehq.com/t/blank-thumbnails/1551
**Category:** Uncategorized
**Created:** [January 5, 2019, 4:51pm UTC](https://talk.observablehq.com/t/blank-thumbnails/1551 "2019-01-05T16:51:28Z")
**Posts on this page:** 8
**Page:** 2

<div class="post-metadata">

### Author: ![Martien](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/martien/32/470_2.png) [@Martien](https://talk.observablehq.com/u/Martien)
#### Post date: [January 17, 2019, 3:47pm UTC](https://talk.observablehq.com/t/blank-thumbnails/1551/22 "2019-01-17T15:47:07Z")

</div>

Thanks for all your effort and raising the attention.

---

<div class="post-metadata">

### Author: ![tom](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/tom/32/2262_2.png) [@tom](https://talk.observablehq.com/u/tom)
#### Post date: [January 17, 2019, 10:14pm UTC](https://talk.observablehq.com/t/blank-thumbnails/1551/23 "2019-01-17T22:14:51Z")

</div>

Thanks everyone for the investigation! The gist is, well: right now we generate thumbnails on ‘cloud’ infrastructure (basically, Heroku), with [puppeteer](https://github.com/GoogleChrome/puppeteer). It’s sub-optimal and we’re doubtful it can get that much better without a categorical shift: specifically, doing thumbnails on hardware - preferably a shiny Mac Mini. That’s pretty high on our list, but we’ve got a few things to ship before we tackle it. Thanks for your patience in the meantime.

---

<div class="post-metadata">

### Author: ![mbostock](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/mbostock/32/9_2.png) [@mbostock](https://talk.observablehq.com/u/mbostock)
#### Post date: [January 22, 2019, 3:34am UTC](https://talk.observablehq.com/t/blank-thumbnails/1551/24 "2019-01-22T03:34:37Z")

</div>

I think this might be a bug not in how we generate thumbnails but how we schedule them. I’m not going to dive into the details in this thread, but I have a hunch as to what’s going on and it should be easy to fix.

---

<div class="post-metadata">

### Author: ![mbostock](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/mbostock/32/9_2.png) [@mbostock](https://talk.observablehq.com/u/mbostock)
#### Post date: [January 22, 2019, 8:13am UTC](https://talk.observablehq.com/t/blank-thumbnails/1551/25 "2019-01-22T08:13:22Z")

</div>

I fixed a bug in the thumbnailer, and @Martien’s flower is blooming again. 🌹

---

<div class="post-metadata">

### Author: ![Martien](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/martien/32/470_2.png) [@Martien](https://talk.observablehq.com/u/Martien)
#### Post date: [January 22, 2019, 1:14pm UTC](https://talk.observablehq.com/t/blank-thumbnails/1551/26 "2019-01-22T13:14:23Z")

</div>

🙏🤩

---

<div class="post-metadata">

### Author: ![bgchen](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/bgchen/32/784_2.png) [@bgchen](https://talk.observablehq.com/u/bgchen)
#### Post date: [January 22, 2019, 3:53pm UTC](https://talk.observablehq.com/t/blank-thumbnails/1551/27 "2019-01-22T15:53:57Z")

</div>

Woohoo! This fixed all my notebooks as well!

---

<div class="post-metadata">

### Author: ![jrus](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/jrus/32/586_2.png) [@jrus](https://talk.observablehq.com/u/jrus)
#### Post date: [May 30, 2019, 12:22am UTC](https://talk.observablehq.com/t/blank-thumbnails/1551/28 "2019-05-30T00:22:07Z")

</div>

I have added a [`thumbnail_daemon`](https://observablehq.com/@jrus/misc#thumbnail_daemon) cell to [`@jrus/misc`](https://observablehq.com/@jrus/misc).

For the moment, it uses @mootari’s trick

```auto
thumbnail_daemon =
  navigator.userAgent.match('HeadlessChrome')

```

But that can be changed to some other detection mechanism if the Observable thumbnail daemon ever switches user agent. Then notebooks relying on it won’t have to be manually changed one by one if it ever breaks.

Maybe the Observable team could explicitly add a built-in name, or at least commit to some reliable detection mechanism?

---

<div class="post-metadata">

### Author: ![mootari](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/mootari/32/581_2.png) [@mootari](https://talk.observablehq.com/u/mootari)
#### Post date: [May 31, 2019, 8:25pm UTC](https://talk.observablehq.com/t/blank-thumbnails/1551/29 "2019-05-31T20:25:30Z")

</div>

They added a preview image option! 🥳

![observable-preview-option](https://canada1.discourse-cdn.com/flex030/uploads/observablehq/original/2X/8/8d330dbd892aa0f53f1e9eda8bba0f3e65ac50df.png)

[Previous page](https://talk.observablehq.com/t/blank-thumbnails/1551.md?page=1)
