Explore the sbt documentation to understand which command will run core and storage after running root.
lazy val root = project.in(file(".")).________(core, storage)
lazy val core = project.in(file("core"))
lazy val storage = project.in(file("storage"))