The first important thing to point out about a Dart package project structure is that its validity is asserted by the presence of a pubspec.yaml file; that is, if there's a pubspec.yaml file in your structure, then there is a package and this is where you properly describe it—without it, there's no package at all. This is what a typical package looks like:
For application packages, there is no required project layout to adopt (as it's not intended to be published to the pub repository); however, as it ...