This is the package layout convention followed by official Unity packages:
<root>
  ├── package.json
  ├── README.md
  ├── CHANGELOG.md
  ├── LICENSE.md
  ├── Editor
  │   ├── Unity.[YourPackageName].Editor.asmdef
  │   └── EditorExample.cs
  ├── Runtime
  │   ├── Unity.[YourPackageName].asmdef
  │   └── RuntimeExample.cs
  ├── Tests
  │   ├── Editor
  │   │   ├── Unity.[YourPackageName].Editor.Tests.asmdef
  │   │   └── EditorExampleTest.cs
  │   └── Runtime
  │        ├── Unity.[YourPackageName].Tests.asmdef
  │        └── RuntimeExampleTest.cs
  └── Documentation~
       └── [YourPackageName].md
| Location | Description | 
|---|---|
package.json | 
The package manifestEach package has a manifest, which provides information about the package to the Package Manager. The manifest contains information such as the name of the package, its version, a description for users, dependencies on other packages (if any), and other details. More info See in Glossary, which defines the package dependencies See in Glossary and other metadata.  | 
README.md | 
Developer package documentation. This is generally documentation to help developers who want to modify the package or push a new change on the package master source repository. | 
CHANGELOG.md | 
Description of package changes in reverse chronological order. It is good practice to use a standard format, like Keep a Changelog. | 
LICENSE.md | 
Contains the package license text. Usually the Package Manager copies the text from the selected SPDX list website. | 
Editor/ | 
Editor platform-specific Assets folder. Unlike Editor folders under Assets, this is only a convention and does not affect the Asset import pipeline. See Assembly definition and packages to properly configure Editor-specific assemblies in this folder. | 
Runtime/ | 
Runtime platform-specific Assets folder. This is only a convention and does not affect the Asset import pipeline. See Assembly definition and packages to properly configure runtime assemblies in this folder. | 
Tests/ | 
Package tests folder. | 
Tests/Editor/ | 
Editor platform specific tests folder. See Assembly definition and packages to properly configure Editor-specific test assemblies in this folder. | 
Tests/Runtime/ | 
Runtime platform specific tests. See Assembly definition and packages to properly configure runtime test assemblies in this folder. | 
Documentation~ | 
Optional folder for documentation for the package. |