open-index/open-npm huggingface dataset:
npm package: @libria/scaffold-angular
Description: Angular cli wrapper template for @libria/scaffold
Author: LibriaForge
Latest version: 0.0.5
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @libria/scaffold-angular

Angular CLI wrapper template for [@libria/scaffold](https://github.com/LibriaForge/scaffold).

This plugin scaffolds new Angular projects by wrapping `@angular/cli`, exposing its options through the scaffold plugin interface. Options are dynamically resolved based on the selected Angular version.

## Installation

```bash
npm install @libria/scaffold-angular
```

## Usage

```bash
# Interactive — prompts for version first, then version-specific options
scaffold new angular my-app

# Non-interactive — pass all options via CLI
scaffold new angular my-app --version 21 --style scss --routing --ssr

# Show available options for a specific version
scaffold new angular my-app --version 18 --help
```

## Supported Options

Options vary by Angular version. Common options include:

| Option | Type | Description |
|--------|------|-------------|
| `--version` | select | Angular major version (e.g. 21, 20, 19, 18) |
| `--style` | select | Stylesheet format (css, scss, sass, less) |
| `--routing` | boolean | Add routing module |
| `--ssr` | boolean | Enable Server-Side Rendering |
| `--package-manager` | select | Package manager (npm, yarn, pnpm) |
| `--strict` | boolean | Enable strict mode |
| `--prefix` | string | Component selector prefix |
| `--skip-tests` | boolean | Skip generating test files |
| `--skip-git` | boolean | Skip git initialization |
| `--skip-install` | boolean | Skip installing dependencies |

## How It Works

The plugin wraps `npx @angular/cli@<version> new <name>` and translates scaffold options into Angular CLI flags. The option set is auto-generated from Angular's JSON schemas across multiple major versions.

## License

MIT
npm package: @libria/scaffold-core
Description: Core types and utilities for @libria/scaffold
Author: LibriaForge
Latest version: 0.3.8

# @libria/scaffold-core

Shared types and utilities used by `@libria/scaffold` and its template plugins.

![Version](https://img.shields.io/npm/v/@libria/scaffold-core)
![License](https://img.shields.io/npm/l/@libria/scaffold-core)

## Installation

```bash
npm install @libria/scaffold-core
```

## API

### Types

**`ScaffoldTemplatePlugin<TOpt>`** — Interface that every template plugin must implement:

```typescript
interface ScaffoldTemplatePlugin<TOpt extends object = object> {
    readonly argument: string;
    getOptions(options: ScaffoldTemplatePluginOptions & Partial<ResolvedOptions<TOpt>>): Promise<Partial<{ [k in keyof TOpt]: ScaffoldTemplatePluginOption }>>;
    execute(options: ExecuteOptions<TOpt>): Promise<void>;
}
```

**`ScaffoldTemplatePluginOption<TValue>`** — Defines a single CLI option for a template:

```typescript
type ScaffoldTemplatePluginOption<TValue = string | boolean | number> = {
    readonly flags: string;
    readonly required?: boolean;
    readonly description: string;
    readonly defaultValue?: TValue | TValue[];
    readonly choices?: TValue[];
};
```

**`ScaffoldTemplatePluginOptions`** — Base options passed to every template:

```typescript
type ScaffoldTemplatePluginOptions = {
    name: string;
    dryRun?: boolean;
    force?: boolean;
};
```

**`SCAFFOLD_TEMPLATE_PLUGIN_TYPE`** — Plugin type constant (`"scaffold-template"`).

### Utilities

**`replacePlaceholders(targetDir, replacements)`** — Recursively walks a directory and replaces all occurrences of placeholder strings in `.ts`, `.js`, `.json`, `.md`, and `.txt` files.

```typescript
await replacePlaceholders('./my-project', {
    '{PACKAGE_NAME}': 'my-lib',
    '{DESCRIPTION}': 'A cool library',
});
```

## License

MIT
npm package: @libria/scaffold-plugin-angular
Description: Angular cli wrapper template for @libria/scaffold
Author: LibriaForge
Latest version: 0.0.6

# @libria/scaffold-plugin-angular

Angular CLI wrapper template for [@libria/scaffold](https://github.com/LibriaForge/scaffold).

This plugin scaffolds new Angular projects by wrapping `@angular/cli`, exposing its options through the scaffold plugin interface. Options are dynamically resolved based on the selected Angular version.

## Installation

```bash
npm install @libria/scaffold-plugin-angular
```

## Usage

```bash
# Interactive — prompts for version first, then version-specific options
lb-scaffold new angular my-app

# Non-interactive — pass all options via CLI
lb-scaffold new angular my-app --version 21 --style scss --routing --ssr

# Show available options for a specific version
lb-scaffold new angular my-app --version 18 --help
```

## Supported Options

Options vary by Angular version. Common options include:

| Option | Type | Description |
|--------|------|-------------|
| `--version` | select | Angular major version (e.g. 21, 20, 19, 18) |
| `--style` | select | Stylesheet format (css, scss, sass, less) |
| `--routing` | boolean | Add routing module |
| `--ssr` | boolean | Enable Server-Side Rendering |
| `--package-manager` | select | Package manager (npm, yarn, pnpm) |
| `--strict` | boolean | Enable strict mode |
| `--prefix` | string | Component selector prefix |
| `--skip-tests` | boolean | Skip generating test files |
| `--skip-git` | boolean | Skip git initialization |
| `--skip-install` | boolean | Skip installing dependencies |

## How It Works

The plugin wraps `npx @angular/cli@<version> new <name>` and translates scaffold options into Angular CLI flags. The option set is auto-generated from Angular's JSON schemas across multiple major versions.

## License

MIT
npm package: @libria/scaffold-plugin-nestjs
Description: NestJs cli wrapper template for @libria/scaffold
Author: LibriaForge
Latest version: 0.0.5

# @libria/scaffold-plugin-nestjs

NestJS CLI wrapper template for [@libria/scaffold](https://github.com/LibriaForge/scaffold).

This plugin scaffolds new NestJS projects by wrapping `@nestjs/cli`, exposing its options through the scaffold plugin interface. Options are dynamically resolved based on the selected NestJS version.

## Installation

```bash
npm install @libria/scaffold-plugin-nestjs
```

## Usage

```bash
# Interactive — prompts for version first, then version-specific options
lb-scaffold new nestjs my-api

# Non-interactive — pass all options via CLI
lb-scaffold new nestjs my-api --version 11 --language TypeScript --package-manager pnpm

# Show available options for a specific version
lb-scaffold new nestjs my-api --version 10 --help
```

## Supported Options

| Option | Type | Description |
|--------|------|-------------|
| `--version` | select | NestJS major version (e.g. 11, 10) |
| `--language` | select | Programming language (TypeScript, JavaScript) |
| `--package-manager` | select | Package manager (npm, yarn, pnpm) |
| `--strict` | boolean | Enable TypeScript strict mode |
| `--skip-git` | boolean | Skip git initialization |
| `--skip-install` | boolean | Skip installing dependencies |

## How It Works

The plugin wraps `npx @nestjs/cli@<version> new <name>` and translates scaffold options into NestJS CLI flags. The option set is auto-generated from NestJS's JSON schemas across the last 2 major versions.

## License

MIT
npm package: @libria/scaffold-plugin-nextjs
Description: Scaffold template for NextJS
Author: LibriaForge
Latest version: 0.0.3

# @libria/scaffold-plugin-nextjs

Next.js CLI wrapper template for [@libria/scaffold](https://github.com/LibriaForge/scaffold).

This plugin scaffolds new Next.js projects by wrapping `create-next-app`, exposing its options through the scaffold plugin interface.

## Installation

```bash
npm install @libria/scaffold-plugin-nextjs
```

## Usage

```bash
# Interactive — prompts for all options
lb-scaffold new nextjs my-app

# Non-interactive — pass all options via CLI
lb-scaffold new nextjs my-app --language typescript --tailwind --bundler turbopack

# Show available options
lb-scaffold new nextjs my-app --help
```

## Supported Options

| Option | Type | Description |
|--------|------|-------------|
| `--version` | string | Next.js version (default: latest) |
| `--language` | select | Language (typescript, javascript) |
| `--tailwind` | boolean | Enable Tailwind CSS (default: true) |
| `--react-compiler` | boolean | Enable React compiler (default: false) |
| `--linter` | select | Linter (eslint, biome, none) |
| `--project-type` | select | Project type (app, api, empty) |
| `--src-dir` | boolean | Initialize with src/ directory |
| `--bundler` | select | Bundler (turbopack, webpack) |
| `--import-alias` | string | Import alias pattern (default: @/*) |
| `--package-manager` | select | Package manager (npm, yarn, pnpm, bun) |
| `--install` | boolean | Install dependencies (default: true) |
| `--git-init` | boolean | Initialize git repository (default: true) |

## How It Works

The plugin wraps `npx create-next-app@<version> <name>` and translates scaffold options into Next.js CLI flags.

## License

MIT
npm package: @libria/scaffold-plugin-ts-lib
Description: Typescript library template for @libria/scaffold
Author: LibriaForge
Latest version: 0.0.7

# @libria/scaffold-plugin-ts-lib

TypeScript library template for [@libria/scaffold](https://github.com/LibriaForge/scaffold).

This plugin scaffolds new TypeScript library projects with a pre-configured build setup, testing, linting, and publishing workflow.

## Installation

```bash
npm install @libria/scaffold-plugin-ts-lib
```

## Usage

```bash
# Interactive — prompts for all options
lb-scaffold new ts-lib my-lib

# Non-interactive
lb-scaffold new ts-lib my-lib --author "John Doe" --license MIT
```

## What You Get

A ready-to-use TypeScript library project with:

- TypeScript configuration (strict mode)
- Build setup with dual CJS/ESM output
- Vitest for testing
- ESLint + Prettier for code quality
- Package.json with proper exports map

## License

MIT
npm package: @libria/scaffold-plugin-ts-workspace
Description: NestJs cli wrapper template for @libria/scaffold
Author: LibriaForge
Latest version: 0.0.6

# @libria/scaffold-plugin-ts-workspace

TypeScript workspace (monorepo) template for [@libria/scaffold](https://github.com/LibriaForge/scaffold).

This plugin manages TypeScript monorepo workspaces with npm workspaces and TypeScript project references. It provides two subcommands: `init` to create a new workspace, and `add` to add projects into an existing workspace.

## Installation

```bash
npm install @libria/scaffold-plugin-ts-workspace
```

## Usage

### Initialize a new workspace

```bash
# Interactive — prompts for all options
lb-scaffold new ts-workspace my-monorepo

# Non-interactive
lb-scaffold new ts-workspace my-monorepo --package-manager npm --git-init
```

### Add a project to an existing workspace

```bash
# Interactive — prompts for template and options
lb-scaffold new ts-workspace my-project --workspace ./my-monorepo --template ts-lib

# Add an Angular app
lb-scaffold new ts-workspace my-app --workspace ./my-monorepo --template angular

# Add a NestJS backend
lb-scaffold new ts-workspace my-api --workspace ./my-monorepo --template nestjs
```

## Supported Options

### `init` subcommand

| Option | Type | Description |
|--------|------|-------------|
| `--package-manager` | select | Package manager (npm, yarn, pnpm) |
| `--git-init` | boolean | Initialize a git repository |

### `add` subcommand

| Option | Type | Description |
|--------|------|-------------|
| `--workspace` | string | Path to the workspace root |
| `--template` | select | Template to use (ts-lib, angular, nestjs, nextjs) |
| `--base-path` | string | Subdirectory for the new project (e.g. `packages`) |

## How It Works

The `init` subcommand creates a workspace directory with a root `package.json` (configured for npm workspaces), a shared `tsconfig.base.json`, and a root `tsconfig.json` with project references.

The `add` subcommand delegates to other template plugins (ts-lib, angular, nestjs, nextjs) to scaffold the project, then automatically:
- Adds the project to the workspace's `package.json` workspaces array
- Adds a TypeScript project reference to the root `tsconfig.json`
- Patches the project's `tsconfig.json` to extend from the workspace's `tsconfig.base.json`

## License

MIT
npm package: @libria/scaffold-ts-lib
Description: Typescript library template for @libria/scaffold
Author: LibriaForge
Latest version: 0.0.7
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @libria/scaffold-ts-lib

TypeScript library template for [@libria/scaffold](https://github.com/LibriaForge/scaffold).

This plugin scaffolds new TypeScript library projects with a pre-configured build setup, testing, linting, and publishing workflow.

## Installation

```bash
npm install @libria/scaffold-ts-lib
```

## Usage

```bash
# Interactive — prompts for all options
scaffold new ts-lib my-lib

# Non-interactive
scaffold new ts-lib my-lib --author "John Doe" --license MIT
```

## What You Get

A ready-to-use TypeScript library project with:

- TypeScript configuration (strict mode)
- Build setup with dual CJS/ESM output
- Vitest for testing
- ESLint + Prettier for code quality
- Package.json with proper exports map

## License

MIT