workspace-root
Version:
A simple utility to get the workspace root
107 lines (72 loc) • 2.75 kB
Markdown
<div style="text-align: center;" align="center">
A simple utility to get the workspace root
[![NPM version][npm-image]][npm-url]
[![Codacy Badge][codacy-image]][codacy-url]
[![Test coverage][codecov-image]][codecov-url]
[![npm download][download-image]][download-url]
[![License][license-image]][license-url]
[![Sonar][sonar-image]][sonar-url]
</div>
```bash
$ pnpm install -D workspace-root
$ yarn add -D workspace-root
$ npm install -D workspace-root
```
use import
```js
import { workspaceRoot, workspaceRootSync } from 'workspace-root'
workspaceRoot()
// or
workspaceRootSync()
```
use require
```js
const { workspaceRoot, workspaceRootSync } = require('workspace-root')
workspaceRoot()
// or
workspaceRootSync()
```
- Usage: `workspaceRoot(cwd)` & `workspaceRootSync(cwd)`
- Parameters:
<div class="table-prop">
| Param | Description | Type | Optional value | Required | Default value |
| ----- | ------------ | -------- | -------------- | -------- | ------------- |
| cwd | running path | `string` | - | `false` | - |
</div>
- Types:
```ts
declare function workspaceRoot(cwd?: string): Promise<string | null>
declare function workspaceRootSync(cwd?: string): string | null
```
- Demos:
1. simple use
```ts
import { workspaceRoot, workspaceRootSync } from 'workspace-root'
workspaceRoot().then(path => {
console.log('The workspace root is: ', path) // /Users/user/path/of/package/root or null
})
console.log('The workspace root is: ', workspaceRootSync()) // /Users/user/path/of/package/root or null
```
Please open an issue [here](https://github.com/saqqdy/node-kit/issues).
[](LICENSE)
[]: https://img.shields.io/npm/v/workspace-root.svg?style=flat-square
[]: https://npmjs.org/package/workspace-root
[]: https://app.codacy.com/project/badge/Grade/f70d4880e4ad4f40aa970eb9ee9d0696
[]: https://www.codacy.com/gh/saqqdy/workspace-root/dashboard?utm_source=github.com&utm_medium=referral&utm_content=saqqdy/workspace-root&utm_campaign=Badge_Grade
[]: https://img.shields.io/codecov/c/github/saqqdy/workspace-root.svg?style=flat-square
[]: https://codecov.io/github/saqqdy/workspace-root?branch=master
[]: https://img.shields.io/npm/dm/workspace-root.svg?style=flat-square
[]: https://npmjs.org/package/workspace-root
[]: https://img.shields.io/badge/License-MIT-blue.svg
[]: LICENSE
[]: https://sonarcloud.io/api/project_badges/quality_gate?project=saqqdy_node-kit
[]: https://sonarcloud.io/dashboard?id=saqqdy_node-kit