a flow-based component system in dart with a better expressive api