70 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # pkg-dir
 | |
| 
 | |
| > Find the root directory of a Node.js project or npm package
 | |
| 
 | |
| ## Install
 | |
| 
 | |
| ```sh
 | |
| npm install pkg-dir
 | |
| ```
 | |
| 
 | |
| ## Usage
 | |
| 
 | |
| ```
 | |
| /
 | |
| └── Users
 | |
|     └── sindresorhus
 | |
|         └── foo
 | |
|             ├── package.json
 | |
|             └── bar
 | |
|                 ├── baz
 | |
|                 └── example.js
 | |
| ```
 | |
| 
 | |
| ```js
 | |
| // example.js
 | |
| import {packageDirectory} from 'pkg-dir';
 | |
| 
 | |
| console.log(await packageDirectory());
 | |
| //=> '/Users/sindresorhus/foo'
 | |
| ```
 | |
| 
 | |
| ## API
 | |
| 
 | |
| ### packageDirectory(option?)
 | |
| 
 | |
| Returns a `Promise` for either the project root path or `undefined` if it could not be found.
 | |
| 
 | |
| ### packageDirectorySync(options?)
 | |
| 
 | |
| Returns the project root path or `undefined` if it could not be found.
 | |
| 
 | |
| #### options
 | |
| 
 | |
| Type: `object`
 | |
| 
 | |
| ##### cwd
 | |
| 
 | |
| Type: `string`\
 | |
| Default: `process.cwd()`
 | |
| 
 | |
| The directory to start searching from.
 | |
| 
 | |
| ## Related
 | |
| 
 | |
| - [pkg-dir-cli](https://github.com/sindresorhus/pkg-dir-cli) - CLI for this module
 | |
| - [pkg-up](https://github.com/sindresorhus/pkg-up) - Find the closest package.json file
 | |
| - [find-up](https://github.com/sindresorhus/find-up) - Find a file by walking up parent directories
 | |
| 
 | |
| ---
 | |
| 
 | |
| <div align="center">
 | |
| 	<b>
 | |
| 		<a href="https://tidelift.com/subscription/pkg/npm-pkg-dir?utm_source=npm-pkg-dir&utm_medium=referral&utm_campaign=readme">Get professional support for this package with a Tidelift subscription</a>
 | |
| 	</b>
 | |
| 	<br>
 | |
| 	<sub>
 | |
| 		Tidelift helps make open source sustainable for maintainers while giving companies<br>assurances about security, maintenance, and licensing for their dependencies.
 | |
| 	</sub>
 | |
| </div>
 |