I’m also trying to imagine validation. Parsing SQL error strings? Kill me now.
Even if you have row-based security.
For example, https://play.clickhouse.com/ is an open public playground, and https://adsb.exposed/ is a full-featured application with HTML+ClickHouse and no dedicated backend.