lib
intended for code that can run as-is.
src
intended for code that needs to be manipulated before it can be used.
build
intended for any scripts or tooling needed to build the project.
dist
intended for compiled modules that can be used with other systems.
bin
intended for any executable scripts, compiled binaries used with, or built from your module.
test
intended for all of the project/module's test scripts.
unit
a sub-directory for unit tests.
integration
a sub-directory for integration tests.
env
intended for any environment that's needed for testing.