Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 0195089

Browse files
committed
chore(docs): cleanup starter links
Signed-off-by: Cory Rylan <[email protected]>
1 parent 3548972 commit 0195089

41 files changed

Lines changed: 632 additions & 335 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ Once your branch is created, make your source code changes. Once your changes ar
102102
The repo uses [Semantic Release](https://semantic-release.gitbook.io/semantic-release/) to manage package changes. Commit messages determine the type of release on merge. [Commit Lint](https://commitlint.js.org/) will enforce and catch any formatting issues in commits.
103103

104104
```shell
105-
git commit -a -m "fix(core): disable multi-select" -m "Signed-off-by: Your Name <[email protected]>"
105+
git commit -a -s -m "fix(core): disable multi-select"
106106
```
107107

108108
[Example Commit](https://github.com/NVIDIA/elements/commit/990d8f43a4a055c2f1ca1a6aa0af39f099d04649)

config/vale/styles/config/vocabularies/Elements/accept.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -354,4 +354,5 @@ Worktrees
354354
unmerged
355355
on-theme
356356
spark line
357-
spark lines
357+
spark lines
358+
Alternatively

pnpm-lock.yaml

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

projects/cli/README.md

Lines changed: 44 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# @nvidia-elements/cli
22

3-
The **@nvidia-elements/cli** is a dual-mode command-line tool for the Elements Design System that provides both interactive CLI commands and a Model Context Protocol (MCP) server for AI assistant integration.
3+
The **@nvidia-elements/cli** is a dual-mode command-line tool for the Elements Design System. It provides interactive CLI commands and a Model Context Protocol (MCP) server for AI assistant integration.
44

55
## Purpose
66

@@ -9,10 +9,12 @@ This package serves two primary modes:
99
1. **Interactive CLI (`nve` command)** - Command-line interface with interactive prompts for:
1010
- Component API discovery and search
1111
- Example template browsing and searching
12-
- Playground creation and validation
12+
- Template linting and validation
1313
- Project scaffolding and health checks
1414
- Changelog and version information
1515
- Design token access
16+
- Icon name lookup
17+
- Bundled agent skill access
1618

1719
2. **MCP Server (`nve mcp` command)** - Model Context Protocol server that:
1820
- Exposes all CLI tools to AI assistants (Claude, Cursor, etc.)
@@ -22,49 +24,65 @@ This package serves two primary modes:
2224

2325
## Getting Started
2426

25-
To use the Elements CLI you must have [NodeJS](https://nodejs.org/) installed.
27+
The best way to get started is to run the install script.
2628

2729
```shell
28-
npm install -g @nvidia-elements/cli
30+
curl -fsSL https://nvidia.github.io/elements/install.sh | bash
31+
```
32+
33+
Alternatively you can install with [Node.js](https://nodejs.org/) and npm.
2934

30-
nve
35+
```shell
36+
npm install -g @nvidia-elements/cli
3137
```
3238

3339
## Usage
3440

35-
| Command | Description |
36-
| ----------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
37-
| `nve api.list [format]` | Get list of all available Elements (nve-*) APIs and components. |
38-
| `nve api.search [query] [format]` | Search and retrieve a list of Elements (nve-*) components and APIs using keywords. |
39-
| `nve api.get [names] [format]` | Get documentation known components or attributes by name (nve-*). |
40-
| `nve api.template.validate [template]` | Validates HTML templates using Elements APIs and components (nve-*). |
41-
| `nve api.imports.get [template]` | Get esm imports for a given HTML template using Elements APIs (nve-*). |
42-
| `nve api.tokens.list [format]` | Get available semantic CSS custom properties / design tokens for theming. |
43-
| `nve packages.list` | Get latest published versions of all Elements packages. |
44-
| `nve packages.get [name]` | Get details for a specific Elements package. |
45-
| `nve packages.changelogs.get [name] [format]` | Retrieve changelog details by package name. |
46-
| `nve examples.list [format]` | Get list of available Elements (nve-*) patterns and examples. |
47-
| `nve playground.validate [template]` | Validates HTML templates specifically for playground examples. |
48-
| `nve playground.create [template] [type] [name] [author]` | Create a shareable playground URL from an HTML template. |
49-
| `nve project.create [type] [cwd] [start]` | Create a new starter project. |
50-
| `nve project.validate [type] [cwd]` | Check project for configuration issues and dependencies. |
51-
| `nve project.setup [cwd]` | Setup or update a project to use Elements. |
41+
| Command | Description |
42+
| ---------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
43+
| `nve` | Show About and help output. |
44+
| `nve api.list [format]` | Get a list of all available Elements (`nve-*`) APIs and components. |
45+
| `nve api.get <names> [format]` | Get documentation for known components or attributes by name (`nve-*`). |
46+
| `nve api.template.validate <template>` | Check HTML templates using Elements APIs and components (`nve-*`). |
47+
| `nve api.imports.get <template>` | Get ESM imports for an HTML template using Elements APIs (`nve-*`). |
48+
| `nve api.tokens.list [format] [query]` | Get available semantic CSS custom properties and design tokens for theming. |
49+
| `nve api.icons.list [format]` | Get available icon names for `nve-icon` and `nve-icon-button`. |
50+
| `nve examples.list [format]` | Get available Elements (`nve-*`) starter templates, patterns, and examples. |
51+
| `nve examples.get <id> [format]` | Get the full template of a known example or pattern by ID. |
52+
| `nve project.create <type> [cwd] [start]` | Create a new starter project. |
53+
| `nve project.setup [cwd]` | Set up or update a project to use Elements. |
54+
| `nve project.validate <type> [cwd]` | Check project configuration and dependencies. |
55+
| `nve packages.list` | Get latest published versions of all Elements packages. |
56+
| `nve packages.get <name>` | Get details for a specific Elements package. |
57+
| `nve packages.changelogs.get <name> [format] [limit]` | Retrieve changelog details by package name. |
58+
| `nve skills.list [format]` | Get available Elements agent skills and context. |
59+
| `nve skills.get <name> [format]` | Get a bundled Elements agent skill by name. |
60+
| `nve mcp` | Start the MCP server. |
61+
62+
### Global Options
63+
64+
| Option | Description |
65+
| ----------- | ------------------------------------------------ |
66+
| `--help` | Show help. |
67+
| `--version` | Show version number. |
68+
| `--upgrade` | Upgrade Elements CLI (`nve`) to the latest version. |
69+
| `--debug` | Enable debug output for tools. |
5270

5371
## MCP
5472

5573
### Quick Setup
5674

57-
The fastest way to configure MCP is with the `setup` command:
75+
The fastest way to configure MCP is with the `project.setup` command:
5876

5977
```shell
6078
nve project.setup
6179
```
6280

63-
This detects your package manager, configures the MCP server for both Cursor, Codex, and Claude Code, and adds Elements core dependencies to the project.
81+
This detects your package manager, configures the MCP server for Cursor, Codex, and Claude Code, and adds Elements core dependencies to the project.
6482

6583
### Claude Code
6684

67-
Install to Claude Code by adding the configuration to your `.mcp.json` file. Add the following configuration to your `.mcp.json` file (typically located at `~/.config/claude-code/.mcp.json` or `%APPDATA%\claude-code\.mcp.json` on Windows):
85+
Install to Claude Code by adding the configuration to your `.mcp.json` file. The file is typically located at `~/.config/claude-code/.mcp.json` or `%APPDATA%\claude-code\.mcp.json` on Windows.
6886

6987
```json
7088
{
@@ -103,9 +121,8 @@ Install to Cursor with the MCP configuration below.
103121
| ------ | ----------- | -------------- |
104122
| `/about` | A brief introduction to Elements | `/about` |
105123
| `/doctor` | Verify Elements setup and MCP configuration | `/doctor` |
106-
| `/playground` | Context for creating playground prototypes | `/playground` Create an example login form |
107124
| `/search` | Context for searching Elements APIs | `/search` What works for notifying a user of a long running process? |
108-
| `/new-project` | Context for creating a new Elements project. | `/new-project` Create an Angular todo app |
125+
| `/new-project` | Context for creating a new Elements project | `/new-project` Create a todo app |
109126
| `/migrate` | Context for migrating from deprecated Elements APIs | `/migrate` Migrate this project from deprecated Elements APIs |
110127

111128
### Skills
@@ -134,8 +151,6 @@ Skills provide persistent context to AI agents for building UI with Elements.
134151
| `examples_get` | Get the full template of a known example or pattern by id. |
135152
| `skills_list` | Get a list of available Elements agent skills and context fragments. |
136153
| `skills_get` | Get a bundled Elements agent skill or context fragment by name. |
137-
| `playground_validate` | Validates HTML templates specifically for playground examples. |
138-
| `playground_create` | Create a shareable playground URL from an HTML template. |
139154
| `project_create` | Create a new starter project. |
140155
| `project_validate` | Check project for configuration issues and dependencies. |
141156
| `project_setup` | Setup or update a project to use Elements. |

projects/internals/tools/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -190,7 +190,7 @@
190190
"@pnpm/workspace.read-manifest": "2.2.0",
191191
"@pnpm/catalogs.config": "0.1.0",
192192
"adm-zip": "0.5.16",
193-
"archiver": "7.0.1",
193+
"archiver": "8.0.0",
194194
"fflate": "0.8.2",
195195
"html-format": "1.1.7",
196196
"glob": "catalog:",

projects/internals/tools/src/declarations.d.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,15 @@ declare module '*.md?inline' {
77
}
88

99
declare module 'sanitize-html';
10-
declare module 'archiver';
10+
declare module 'archiver' {
11+
import type { Writable } from 'node:stream';
12+
13+
export class ZipArchive {
14+
constructor(options?: { zlib?: { level?: number } });
15+
16+
pipe<T extends Writable>(destination: T): T;
17+
directory(dirpath: string, destpath: string | false): this;
18+
finalize(): Promise<void>;
19+
}
20+
}
1121
declare module 'adm-zip';

projects/internals/tools/src/project/starters.test.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,10 +48,10 @@ describe('startersData', () => {
4848
expect(startersData.hugo.cli).toBe(true);
4949
expect(startersData.eleventy.cli).toBe(true);
5050
expect(startersData.bundles.cli).toBe(true);
51+
expect(startersData['lit-library'].cli).toBe(true);
5152
expect(startersData.importmaps.cli).toBe(false);
5253
expect(startersData.lit.cli).toBe(false);
5354
expect(startersData['mcp-app'].cli).toBe(true);
54-
expect(startersData.extensions.cli).toBe(false);
5555
expect(startersData.preact.cli).toBe(false);
5656
});
5757

@@ -67,7 +67,6 @@ describe('startersData', () => {
6767
expect(startersData.importmaps.zip).toContain('importmaps.zip');
6868
expect(startersData.bundles.zip).toContain('bundles.zip');
6969
expect(startersData['mcp-app'].zip).toContain('mcp-app.zip');
70-
expect(startersData.extensions.zip).toContain('scoped-registry.zip');
7170
expect(startersData.hugo.zip).toContain('hugo.zip');
7271
});
7372

projects/internals/tools/src/project/starters.ts

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import { readWorkspaceManifest } from '@pnpm/workspace.read-manifest';
1111
import { getCatalogsFromWorkspaceManifest } from '@pnpm/catalogs.config';
1212
import { createExportableManifest } from '@pnpm/exportable-manifest';
1313
import { readProjectManifestOnly } from '@pnpm/read-project-manifest';
14-
import archiver from 'archiver';
14+
import { ZipArchive } from 'archiver';
1515
import AdmZip from 'adm-zip';
1616
import { isCommandAvailable, getNPMClient } from '../internal/node.js';
1717
import type { Report } from '../internal/types.js';
@@ -23,7 +23,6 @@ export type Starter =
2323
| 'angular'
2424
| 'bundles'
2525
| 'eleventy'
26-
| 'extensions'
2726
| 'go'
2827
| 'importmaps'
2928
| 'lit-library'
@@ -53,10 +52,6 @@ export const startersData = {
5352
zip: `${ELEMENTS_PAGES_BASE_URL}/starters/download/eleventy.zip`,
5453
cli: true
5554
},
56-
extensions: {
57-
zip: `${ELEMENTS_PAGES_BASE_URL}/starters/download/scoped-registry.zip`,
58-
cli: false
59-
},
6055
go: {
6156
zip: `${ELEMENTS_PAGES_BASE_URL}/starters/download/go.zip`,
6257
cli: true
@@ -131,7 +126,7 @@ async function zipProject(outDir: string) {
131126
const output = createWriteStream(`${outDir}.zip`);
132127
output.on('error', err => console.error('Error writing to zip file:', err));
133128

134-
const archive = archiver('zip', { zlib: { level: 9 } });
129+
const archive = new ZipArchive({ zlib: { level: 9 } });
135130
archive.pipe(output);
136131
archive.directory(outDir, false);
137132
await archive.finalize();
Lines changed: 1 addition & 0 deletions
Loading
Lines changed: 1 addition & 0 deletions
Loading

0 commit comments

Comments
 (0)