# Getting Started

Kanject is a .NET release workflow CLI with three clear outcomes: deploy a Lambda service, publish governed NuGet libraries, or distribute a desktop application across macOS, Windows, and Linux.

The common idea is evidence before authority. Prove the local build and routes first, stage a candidate where the workflow supports one, then let an explicit approval move known bytes into production. Choose what you are shipping; the command family follows from that decision.

- **[Deploy a Lambda service](https://www.kanject.com/docs/cli-bean-bark/)** — Scaffold or enrol a service, run it locally, deploy to a stage, then operate it through the deployment ledger and rollback.
- **[Publish .NET libraries](https://www.kanject.com/docs/cli-bean-bark-packages/)** — Govern the package surface, audit immutable versions, stage an RC, build clean consumers, and journal approval.
- **[Distribute a desktop app](https://www.kanject.com/docs/cli-bean-bark-desktop/)** — Prove macOS, Windows, and Linux artifacts locally, stage downloads, and promote the exact candidate users tested.

> **Story or checklist?:** The cards open Bean & Bark learn-by-doing paths. Use [CLI Workflows](https://www.kanject.com/docs/cli-workflows/) when you want the neutral setup sequence, or the Learn / Reference switch in the sidebar when you already know the model and need exact behavior.

## Prerequisites

- **.NET 10 SDK** or later — the common runtime and `dotnet` CLI every path builds on
- **AWS CLI 2.x when using AWS-backed paths** — used by Lambda operations and S3 desktop distribution, but not required merely to work on a package repository
- **git 2.x** — required for cross-repo dependency resolution (`add lib`, `sync`, `migrate`)
- **Amazon.Lambda.Tools** — required only for the Lambda deployment path
- An **AWS account** you control for Lambda or S3 distribution — kanject deploys into *your* environment, not a managed host
- For licensed Core libraries: access to the private Kanject **NuGet feed** — request credentials from your administrator. The CLI itself installs from public NuGet with no credentials required
- For desktop native installers: matching-OS build runners and the platform tools/signing identities your chosen formats require

---
_Source: https://www.kanject.com/docs/getting-started/ · Kanject Docs_
