add optional `state` to `create` + test case

TODO: we need to dartdoc the `create` method