more client side scaffolding