---
title: "Packages"
description: "Explore Playstack by product capability, then choose the access tier and adapter surface that fit your application."
tags: ["packages","catalog"]
---

Playstack is organized by product capability. Start with the problem you are solving, then select only the portable domain packages and application-edge adapters you need.

Every package has its own page with installation guidance, examples, and an API entry-point and peer-requirement table generated from its package manifest. The prose explains the selected options and the responsibilities left to your application; it is not an exhaustive reference for every exported symbol. See [compatibility and support](/docs/compatibility) for runtime and framework guidance.

## Feature groups

| Group                                                           | Packages | Includes                                                                                                  |
| --------------------------------------------------------------- | -------: | --------------------------------------------------------------------------------------------------------- |
| [Foundation](/docs/packages/foundation)                         |       13 | Core contracts, errors, validation, cryptography, localization, tooling, and runtime integration support. |
| [Identity and access](/docs/packages/identity)                  |       29 | Accounts, authentication, billing, licensing, repository access, devices, and MFA.                        |
| [Commerce](/docs/packages/commerce)                             |       10 | Catalog, one-time payments, inventory, orders, fulfillment, and NestJS bindings.                          |
| [Events and operations](/docs/packages/events-operations)       |       15 | Events, event storage, analytics, rate limiting, and their production adapters.                           |
| [Communication](/docs/packages/communication)                   |       11 | Audiences, notifications, outbound delivery, durable history, and inbound webhooks.                       |
| [Infrastructure and delivery](/docs/packages/infrastructure)    |       13 | Cache, queues, storage, local-first synchronization, and their framework edges.                           |
| [Content and intelligence](/docs/packages/content-intelligence) |       10 | Content, feeds, search, AI operations, and framework integrations.                                        |
| [Application UI](/docs/packages/ui)                             |        3 | Chakra themes, controlled app compositions and initial account administration.                            |

## Access policy

Playstack is in preview. Tier labels describe licensing and intended access, not proof that a particular version is published or registry access is active. [Request preview access](/pricing) if you do not yet have installation instructions. You can read the guides and choose packages before obtaining access.

- <PlanTierDot tier="free" /> **Free** packages are MIT licensed, with public npm as the intended account-free distribution channel. They cover authentication, API keys, subscription billing, mail, queues, storage, cache, search, events, localization, validation, rate limiting and their framework bindings.
- <PlanTierDot tier="pro" /> **Pro** includes every paid package: team accounts and seats, commerce, licensing, the private registry, audiences, analytics, local-first sync and the application UI compositions.
- <PlanTierDot tier="plus" /> **Plus** is a planned middle tier. No package is exclusive to it yet.

Paid packages use the Playstack Pro License, which permits closed-source applications. Once access is enabled for your account, use a dashboard-issued registry token with `https://registry.playstack.dev/`. Never use a browser session token as a registry credential. Under the subscription policy, releases published while your subscription is active remain eligible after it ends; newer releases require renewed access. Packages marked **Paid · tier to be announced** grant no access until assigned.

See [Getting started](/docs/getting-started) for separate `.npmrc` and terminal instructions. For installation errors, check credentials, package access and the exact published version before replacing tokens.

Browse the [Free](/docs/free), [Paid](/docs/paid), [Plus](/docs/plus) and [Pro](/docs/pro) catalogs, or [request pricing access](/pricing).

## Reading the reference

Package pages combine examples with configuration and behavior notes. They are not a substitute for the exact TypeScript declarations shipped with your installed version. Use your editor's **Go to Definition** on an imported function or type to inspect its arguments, return value and overloads. Public subpath exports select optional runtime, provider and testing surfaces; avoid imports from private `src` or `dist` paths.

Examples labeled **composition example** assume the application-owned services named above them already exist. Those names are not additional Playstack exports. If you want a complete program first, run the [storage quickstart](/docs/getting-started#your-first-working-example).

## Package boundaries

Domain packages do not choose your web framework or persistence technology. Their commands accept explicit dependencies and optional operation context, and their event seams can be connected to the rest of the application.

Framework and infrastructure adapters belong at the application edge. They expose the underlying clients and lifecycle hooks needed for connection reuse, transactions, shutdown, observability, and test doubles.

Package scopes remain stable when a package moves between Free, Plus, and Pro. Playstack also uses fixed versioning across every tier, so a dependency graph containing two Playstack versions should be treated as a configuration error.
