Live data from Hacker News

Datasette Apps: Host custom HTML applications inside Datasette

simonwillison.net

11–20 of 76 posts

Re: Datasette Apps: Host custom HTML applications inside Datasette

#11
post #8

Wow this is very similar to the direction im taking with my new project https://github.com/hank-bond/uix (warning the code base is certainly not messy but the application is barely usable for anything as of this post). Here the goal is to be a self-assembling harness (akin to pi) but focusing on duplex human-agent interactivity over rendered HTML "apps". To start, it's focused more on the "please review this PR and t…

People that overuse LLMs I notice all build the same things and have the same ideas. Its one of the many reasons I avoid them, it kinda leads people into this average group where creativity is dead and there's a kinda hive mind controlling them.

Ive witnessed it many times now, im positive this phenomenon exists.

Re: Datasette Apps: Host custom HTML applications inside Datasette

#12
post #7

Earlier quoted context omitted.

I can’t even parse what you’re complaining about. Could you elaborate?

I'm assuming he's talking about the old hardware data cassette vs the software project of the save name? https://en.wikipedia.org/wiki/Commodore_Datasette vs https://datasette.io/

I’m assuming they’re just taking about the word dataset.

Either way feels ridiculous, but the human in me wants to know which it is ^_^

Re: Datasette Apps: Host custom HTML applications inside Datasette

#13
post #7

Earlier quoted context omitted.

I can’t even parse what you’re complaining about. Could you elaborate?

I'm assuming he's talking about the old hardware data cassette vs the software project of the save name? https://en.wikipedia.org/wiki/Commodore_Datasette vs https://datasette.io/

My favourite Datassette is the electronic artist.

https://datassette.bandcamp.com/

https://musicforprogramming.net/

Re: Datasette Apps: Host custom HTML applications inside Datasette

#14

It is pretty cool that we have browser features like this to rely on. I remember writing code in the bad old days to parse HTML tags and allowlist specific attributes. Now browsers have a much better solution baked in. But it still makes me a bit nervous. Seems like a very small bug could sneak in. This is a good example of where I would reach for Fable to double check the implementation and have a lot of extra tests…

In the three short days we had access to Fable I did have it run a review, and it spotted an issue for me to fix.

Thankfully GPT-5.5 is really strong on security stuff too. I wouldn't have dared build this without a whole lot of Opus/GPT-assisted prototyping and testing along the way.

Re: Datasette Apps: Host custom HTML applications inside Datasette

#15
post #6

When I've needed something like this in the past I've spun up simple HTML pages and used the json endpoint that all datasette instances come with [0]. I like this new pattern much better, as it keeps your app and data in one place (I remember having some issue with this at the time, though I can't remember what the actual issue was) So I imagine we could now load some data in to sqlite, design some HTML also loaded i…

I'm going to think about how Datasette Apps can work with the apps themselves stored on a filesystem so they can be revision controlled using Git.

I have an idea for a way to edit them through Datasette and have them backed up to Git via a separate mechanism, but having them on disk would be a whole lot more convenient.

Filed an issue here: https://github.com/datasette/datasette-apps/issues/30

Re: Datasette Apps: Host custom HTML applications inside Datasette

#16
post #2

Why people feel the need to overload terms like "datasette" I'll never know

I learned to program on a C64 and one of the first programs I wrote myself was an incredible basic "database" (really just a program that could store and then return simple fielded data.)

I named my database management software Datasette as an homage to the C64. I also figured it would be a unique name that would be easy to search for...

... jokes on me, it turns out the retro computing C64 community is way more active than I expected and there are still plenty of people taking about Datasette tape drives online, 30+ years after they stopped being manufactured and sold.

Re: Datasette Apps: Host custom HTML applications inside Datasette

#17
post #7
post #2

Why people feel the need to overload terms like "datasette" I'll never know

I can’t even parse what you’re complaining about. Could you elaborate?

    10 PRINT "HAVE YOU TRIED READING IT AGAIN?"
    20 GOTO "https://news.ycombinator.com/item?id=48594798"

Re: Datasette Apps: Host custom HTML applications inside Datasette

#18
post #15
post #6

When I've needed something like this in the past I've spun up simple HTML pages and used the json endpoint that all datasette instances come with [0]. I like this new pattern much better, as it keeps your app and data in one place (I remember having some issue with this at the time, though I can't remember what the actual issue was) So I imagine we could now load some data in to sqlite, design some HTML also loaded i…

I'm going to think about how Datasette Apps can work with the apps themselves stored on a filesystem so they can be revision controlled using Git. I have an idea for a way to edit them through Datasette and have them backed up to Git via a separate mechanism, but having them on disk would be a whole lot more convenient. Filed an issue here: https://github.com/datasette/datasette-apps/issues/30

Interesting idea, I know there's the fsdir [0] table-valued function / module that allows loading from disk, so it should be possible to modify that or hard-code base list of paths or something

[0] https://sqlite.org/src/file/ext/misc/fileio.c, it allows you to read a directory recursively in the cli (`select * from fsdir("./");`)

Edit: It allows upwards traversals (`select * from fsdir("../../../../etc/passwd");`), so beware

Re: Datasette Apps: Host custom HTML applications inside Datasette

#19
post #18
post #15

Earlier quoted context omitted.

I'm going to think about how Datasette Apps can work with the apps themselves stored on a filesystem so they can be revision controlled using Git. I have an idea for a way to edit them through Datasette and have them backed up to Git via a separate mechanism, but having them on disk would be a whole lot more convenient. Filed an issue here: https://github.com/datasette/datasette-apps/issues/30

Interesting idea, I know there's the fsdir [0] table-valued function / module that allows loading from disk, so it should be possible to modify that or hard-code base list of paths or something [0] https://sqlite.org/src/file/ext/misc/fileio.c , it allows you to read a directory recursively in the cli (`select * from fsdir("./");`) Edit: It allows upwards traversals (`select * from fsdir("../../../../etc/passwd");`),…

Wow, I didn't know about that one. SQLite never ceases to surprise.

I'm sticking with the Python bundled sqlite3 though so I'm not in a good place to take advantage of that one.

Re: Datasette Apps: Host custom HTML applications inside Datasette

#20
post #19
post #18

Earlier quoted context omitted.

Interesting idea, I know there's the fsdir [0] table-valued function / module that allows loading from disk, so it should be possible to modify that or hard-code base list of paths or something [0] https://sqlite.org/src/file/ext/misc/fileio.c , it allows you to read a directory recursively in the cli (`select * from fsdir("./");`) Edit: It allows upwards traversals (`select * from fsdir("../../../../etc/passwd");`),…

Wow, I didn't know about that one. SQLite never ceases to surprise. I'm sticking with the Python bundled sqlite3 though so I'm not in a good place to take advantage of that one.

It's probably out of scope for you, but I've used the 'vtfunc' module [0] for a similar purpose actually.

[0] https://github.com/coleifer/sqlite-vtfunc

Post reply on HN