html_url,issue_url,id,node_id,user,created_at,updated_at,author_association,body,reactions,issue,performed_via_github_app
https://github.com/simonw/datasette/issues/1300#issuecomment-833132571,https://api.github.com/repos/simonw/datasette/issues/1300,833132571,MDEyOklzc3VlQ29tbWVudDgzMzEzMjU3MQ==,3243482,2021-05-06T00:16:50Z,2021-05-06T00:18:05Z,CONTRIBUTOR,"I ended up using some JS as a workaround.
First, add a JS file in `metadata.yaml`:
```yaml
extra_js_urls:
- '/static/app.js'
```
then inside the script, find the blob download links and replace `.blob` extension in the url with `.jpg` and replace the links with `` elements.
You need to add an output formatter to serve `BLOB` columns as JPG. You can find the code in the first post.
~~Replacing `.blob` -> `.jpg` might not even be necessary, because browsers only care about the mime type, so you only need to serve the binary content with the right `content-type` header.~~. You need to replace the extension, otherwise the output renderer will not run.
```js
window.addEventListener('DOMContentLoaded', () => {
function renderBlobImages() {
document.querySelectorAll('a[href*="".blob""]').forEach(el => {
const img = document.createElement('img');
img.className = 'blob-image';
img.loading = 'lazy';
img.src = el.href.replace('.blob', '.jpg');
el.parentElement.replaceChild(img, el);
});
}
renderBlobImages();
});
```
while this does the job, I'd prefer handling this in Python where it belongs.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",860625833,