For what it’s worth, I share that intuition about metaclasses!
It seems like the issue here is specifically the config options (buffered=True, attrs=True, client_writable=True), as the rest can be combined with inheritance. Just spitballing, no promises, but would something like this appeal?
class MyBaseModel(WithLinks, WithView):
_anvil_model_options_ = {"buffered":True, "attrs":True, "client_writable":True}
class Book(MyBaseModel, app_tables.books.Row):
# ...