# Installation > Install the ShellDocs CLI, add the framework to a Blazor project. Source: https://shelldocs.shellui.dev/docs/getting-started/installation Two things to install: the **CLI** (a .NET global tool) and the **framework packages** (referenced from your docs project). Most consumers use the CLI to scaffold a fresh project, which wires the packages automatically. ## Prerequisites | Name | Type | Default | Description | |------|------|---------|-------------| | `.NET SDK` (required) | `10.0+` | | .NET 10 or newer. Verify with dotnet --version. | | `git` | `any` | | For version control. Not strictly required to run ShellDocs : required for publishing to GitHub Pages / Cloudflare / Netlify from a repo. | ## Install the CLI `ShellDocs.CLI` is a .NET global tool. Install once, use from any directory. ```bash dotnet tool install -g ShellDocs.CLI --prerelease ``` > **Why --prerelease** > > The `--prerelease` flag is required while ShellDocs is on `0.x.y-alpha` versions. `dotnet tool install` skips prerelease packages by default. Drop the flag once `1.0` ships. Verify: ```bash shelldocs --help ``` You should see `init`, `add`, `dev` and `build` in the command list. (`preview` is listed too, but is not implemented yet.) ## Update the CLI ```bash dotnet tool update -g ShellDocs.CLI --prerelease ``` Pulls the latest published version from nuget.org. ## The framework packages If you're scaffolding via `shelldocs init`, the CLI adds these to your `.csproj` automatically. If you're wiring an existing Blazor project by hand, add: **dotnet CLI** ```bash dotnet add package ShellDocs.Components --prerelease dotnet add package ShellDocs.Tokens --prerelease ``` **PackageReference** ```xml ``` `ShellDocs.Core` and `ShellDocs.Markdown` come in transitively : no need to reference them directly. ## The package family | Name | Type | Default | Description | |------|------|---------|-------------| | `ShellDocs.CLI` | `global tool` | | shelldocs init, add, dev, build. Installed once, works from any directory. | | `ShellDocs.Components` | `RCL` | | The chrome (layout, sidebar, search, header) and content primitives (Callout, Card, Steps, CodeGroup, TypeTable, more). | | `ShellDocs.Tokens` | `RCL` | | Shared CSS variables. shadcn-compatible names for interop with ShellUI and other design systems. | | `ShellDocs.Core` | `library (transitive)` | | Navigation graph, search index, markdown plain-text extraction. | | `ShellDocs.Markdown` | `library (transitive)` | | Markdig pipeline, frontmatter parser, razor:preview and inline-component slot extractor. | ## Next - [Quick start](https://shelldocs.shellui.dev/docs/getting-started/quick-start.md): Scaffold a fresh site and see it running in ~5 minutes. - [Project structure](https://shelldocs.shellui.dev/docs/getting-started/project-structure.md): What shelldocs init created, and what each folder does.