discover-workspaces
TypeScript icon, indicating that this package has built-in type declarations

0.0.5 • Public • Published

discover-workspaces

Scan a mono-repo to discover all the projects in that mono-repo.

Utility

Import the utility...

import { discoverWorkspaces, PackageDetails, DependencyIdentifier, PackageTypes } from "discover-workspaces";

or

import { workspaceDiscovery, PackageDetails, DependencyIdentifier, PackageTypes } from "discover-workspaces";

const logger = { error: console.error };
const discoverWorkspaces = workspaceDiscovery({ logger: console });

Usage...

const cwd = "./path-to-mono-repo";
const result: PackageDetails[] = discoverWorkspaces({ cwd });

Definition of PackageDetails:

{
    identifier: DependencyIdentifier,
    dependencies: DependencyIdentifier[];
    devDependencies: DependencyIdentifier[];
    peerDependencies: DependencyIdentifier[];
    scripts: string[]; //Names of each script
    directory: string; //Full path of the project
    packageJson: any; // Full JSON of the package.json
}

Definition of DependencyIdentifier:

{
    name: string,
    version: string,
    type: PackageTypes.WorkspaceRootPackage | PackageTypes.WorkspacePackage | PackageTypes.ExternalPackage,
},

Readme

Keywords

none

Package Sidebar

Install

npm i discover-workspaces

Weekly Downloads

1

Version

0.0.5

License

MIT

Unpacked Size

58.2 kB

Total Files

69

Last publish

Collaborators

  • ncochard