Skip to content

Tari Ootle Playground

One of the key use cases for Tari (and the Ootle) that will emerge is agentic payments. To that end, while this documentation is here for humans, this page has been designed with an “agent first” mindset. If you use any coding agent, point them at this page and they will be able to begin developing Tari tapplets for you.

  • Set up a wallet: Connect a wallet to the esmeralda testnet.
  • Template Development Basics: Understand the abstractions and structure of the Ootle template library.
  • Build Your First Template: Follow a step-by-step code walkthrough to create a functional template (smart contract).
  • Publish to the Network: Learn the process of publishing your templates to the Ootle network.
  • Execute Transactions: Use your published templates by executing them within transactions.

By the end of this guide, you will have a solid foundation in Tari Ootle development. You’ll be able to write, test, and publish Rust-based smart contracts, interact with the Ootle network, and understand how to manage digital assets and state on-chain.

Setup a Wallet

Download and install a wallet. You’ll need this to publish templates. Wallet Setup

Guides

Step-by-step tutorials and practical examples to help you build, test, and publish your Ootle Templates. Learn how to write templates, manage resources, handle events, and implement access control. Explore the Guides

Reference

Detailed API documentation for all the types, macros, and modules provided by the tari_template_lib and tari_template_lib_types crates. View the Reference

In the Tari ecosystem, an “Ootle Template” is analogous to a smart contract on other blockchain platforms. It is compiled into WebAssembly (WASM) and defines the logic and state transitions for on-chain applications.

  • Rust-Native Development: Leverage the power and safety of Rust to write your on-chain logic.
  • Ergonomic: Simplified interfaces for interacting with the Tari Ootle engine, including resource management, component creation, and event emission.
  • Interoperability: Designed to integrate seamlessly within the broader Tari ecosystem.
  • Security-Focused: Built with security best practices in mind, providing tools to help developers write secure code.