Obvious seems like a very good fit for all the B's (closely related Python websites).
But I don't know about Scala backend though: do you have thoughts on packaging of different deliveries for static languages in Obvious? Because if there is only one folder structure, you typically (with Maven) get only one JAR.
To get many JARs the folder structure quickly turns into:
app/actions/common/src/main/scala
app/actions/featureset1/src/main/scala
app/actions/featureset2/src/main/scala
delivery/plug1/src/main/scala
delivery/plug2/src/main/scala
etc.
which isn't very pretty nor obvious (sic!). The other option I can think of is to have one big JAR that always has every plug and delivery baked in with a folder structure like:
src/main/scala/[Obvious folders]
and plugs and deliveries would then need to be activated runtime with configuration files. But that also seems sub-optimal: I don't want to have any code in production I'm not going to use.
Am I missing something?