RADIX WikiRADIX Wiki

Scrypto

Asset-oriented programming: resources, auth, testing, and design patterns.

The main article for this category is Scrypto.

Scrypto

The following 13 pages are in Scrypto.

1. Scrypto Fundamentals

Scrypto is built on asset-oriented programming – a paradigm where digital assets are first-class primitives managed by the Radix Engine, not arbitrary integers…

10. Badge Patterns: User, Actor and Transient Badges

Three Scrypto badge patterns: user badges for people, actor virtual badges for components, and transient badges that force a call order.

11. Deposit and Withdraw Patterns

How a Radix dApp pays users who are not in the transaction: return buckets, badge and claim, authorized depositors, and the account locker.

12. Data Types and the Runtime API

The types a Scrypto blueprint works with, Decimal arithmetic and rounding, and what a blueprint can ask the engine at run time: epoch, clock, addresses, hashes, logs.

13. Before You Release: Hardening a Blueprint

The checks the Radix docs ask of every Scrypto blueprint before mainnet: proofs, state growth, Decimal maths, auth, owners, metadata and builds.

2. Resources, Vaults, and NFTs

A resource is any digital asset on Radix – tokens, NFTs, badges, LP tokens, etc.

3. Authorization and Access Rules

In most smart contract platforms, access control is based on the caller's address – a pattern that leads to fragile permission systems and common exploits like…

4. Events, Metadata, and Royalties

Components can emit events during transaction execution. Events are encoded in SBOR and stored in the transaction receipt – useful for indexing, analytics, and…

5. Testing Scrypto Blueprints

Once your development environment is set up, the next step is understanding the Scrypto development workflow: creating packages, writing blueprints, building…

6. Vault and Resource Patterns

Radix enforces a strict invariant: every resource must exist inside a container at all times.

7. Multi-Component Architecture

Scrypto separates the concept of "smart contract" into two distinct things: blueprints (reusable templates) and components (live instances on the ledger).

8. Oracle Integration

Scrypto components execute deterministically on the Radix Engine and can only access data already present on the ledger – they cannot make HTTP calls or read…

9. Permissioned and Regulated Assets

Some assets are not meant to move freely. A tokenised bond may only be transferable between investors who have passed KYC; a credential must stay in the…