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/1605#issuecomment-1016994329,https://api.github.com/repos/simonw/datasette/issues/1605,1016994329,IC_kwDOBm6k_c48nhoZ,25778,2022-01-20T00:27:17Z,2022-01-20T00:27:17Z,CONTRIBUTOR,"Right now, I usually have a line in a Makefile like this:
```make
combined.geojson: project.db
pipenv run datasette project.db --get /project/combined.geojson \
--load-extension spatialite \
--setting sql_time_limit_ms 5000 \
--setting max_returned_rows 20000 \
-m metadata.yml > $@
```
That all assumes I've loaded whatever I need into `project.db` and created a canned query called `combined` (and then uses `datasette-geojson` for geojson output).
It works, but as you can see, it's a lot to manage, a lot of boilerplate, and it wasn't obvious how to get there. If there's an error in the canned query, I get an HTML error page, so that's hard to debug. And it's only one query, so each output needs a line like this. Make isn't ideal, either, for that reason.
The thing I really liked with `datafreeze` was doing templated filenames. I have a project now where I need to export a bunch of litttle geojson files, based on queries, and it would be awesome to be able to do something like this:
```yml
databases:
project:
queries:
boundaries:
sql: ""SELECT * FROM boundaries""
filename: ""boundaries/{id}.geojson""
mode: ""item""
format: geojson
```
And then do:
```sh
datasette freeze -m metadata.yml project.db
```
For HTML export, maybe there's a `template` argument, or `format: template` or something. And that gets you a static site generator, kinda for free.
","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",1108671952,