---
title: "Blueprints & Packages"
url: "https://radix.wiki/contents/tech/core-concepts/blueprints-and-packages"
version: "1.2.2"
updated: 2026-06-30
license: CC-BY-4.0
license_url: "https://creativecommons.org/licenses/by/4.0/"
---

# Blueprints & Packages

|  |  |
| --- | --- |
| **Blueprint** | Template / class definition (like a Rust struct + impl) |
| **Package** | Deployed collection of [blueprints](https://docs.radixdlt.com/docs/blueprints-and-components) (like a crate) |
| **Component** | Instantiated blueprint with its own state and address |

## Overview

In [Scrypto](/contents/tech/core-protocols/scrypto-programming-language), code is organized into a hierarchy:

- **[Blueprints](https://docs.radixdlt.com/docs/blueprints-and-components)** – Templates that define logic, state, and [access rules](https://docs.radixdlt.com/docs/auth) (analogous to Rust structs with impl blocks, or [Solidity](https://soliditylang.org) contracts as classes)
- **Packages** – Deployed bundles of one or more blueprints (analogous to Rust crates). Each package has a unique address on the ledger
- **Components** – Runtime instances of blueprints, each with its own state, address, and [access rules](/contents/tech/core-concepts/access-rules-and-auth-zones)

This model enables code reuse (many components from one blueprint), clear separation of logic and state, and [component royalties](/contents/tech/core-concepts/component-royalties) for blueprint authors.
