Brenton Gunning

Run on Bitcoin

What if you could build interactive, stateful applications directly on Bitcoin? Run introduces 'jigs'—tokenized software objects that bring object-oriented programming to the blockchain.

Run on Bitcoin
#1about 4 minutes

Introducing Run, a platform for interactive tokens on Bitcoin

The Run platform consists of jigs (interactive tokens), a JavaScript library for interacting with them, and optional scaling services.

#2about 3 minutes

Live coding a simple interactive dragon jig

A new jig is created by defining a JavaScript class, instantiating it, and calling methods which generate new Bitcoin transactions for each state update.

#3about 3 minutes

Understanding the core concepts of jigs and the Run library

Jigs are permissionless, tokenized software objects that support object-oriented principles, and the Run library uses a flexible plugin architecture for different environments.

#4about 6 minutes

Building a scalable idle-style game with Run

A demo game shows how players can truly own their in-game assets as jigs, enabling them to trade items outside the application's original scope.

#5about 4 minutes

Defining game rules and logic using jig classes

Game logic, such as requiring payment to create an item or restricting actions to specific caller types, is enforced directly within the jig's JavaScript class definition.

#6about 6 minutes

Solving the layer 2 scaling challenge with state caching

Run avoids the performance bottleneck of replaying transaction histories by caching a jig's final state, which is secured by a state hash in the user-signed transaction.

#7about 3 minutes

Implementing a custom client-side state cache

A custom cache implementation prioritizes loading jig state from local memory and browser storage before falling back to fetching it from a game server.

#8about 3 minutes

Exploring Run's optional services and development roadmap

Run plans to offer optional services like a global state cache, pay server, and query server, with a public beta for version 0.6 coming soon.

#9about 6 minutes

Q&A on class uniqueness and layer 2 protocol design

Copying a jig's code creates a new, distinct object with a unique origin, and Run operates as a hybrid layer 1 and layer 2 protocol for flexibility.

#10about 3 minutes

Q&A on fungible tokens and advanced script interactions

Run provides a base class for fungible tokens that can be extended with custom logic, and it's possible to restrict jig functions using Bitcoin locking scripts.

#11about 6 minutes

Q&A on atomic swaps and database analogies

Jigs can contain partially signed transactions to enable atomic swaps, and the platform functions more like a NoSQL database than a relational one.

Related jobs
Jobs that call for the skills explored in this talk.

Featured Partners

Related Articles

View all articles
Build With Bitcoin SV
At Bitcoin Association, we work to advance business using the Bitcoin SV (BSV) blockchain. A rebirth of the original Bitcoin, Bitcoin SV has restored the protocol to the specifications of creator Satoshi Nakamoto, resulting in a public blockchain cap...
Build With Bitcoin SV
AF
Algorand Foundation
From Hype to Code: Real Blockchain Use Cases for Developers
So you’ve wrapped your head around why blockchain exists . You’re on board with the concepts: decentralization, immutability, and trust-minimized infrastructure. But now comes the real question: What can you actually build with it? This post is for d...
From Hype to Code: Real Blockchain Use Cases for Developers
AF
Algorand Foundation
Why Blockchain? A Developer’s Perspective
For many developers, blockchain feels like that one friend who keeps trying to sell you on their side hustle: persistent, occasionally confusing, and often surrounded by hype. But behind the buzzwords and market noise lies a technology with real engi...
Why Blockchain? A Developer’s Perspective
DC
Daniel Cranney
Dev Digest 177: Blockchain, jQuery and a Prompt Playground
Inside last week’s Dev Digest 177 . 😫 Do AI tools slow down developers by 20%? 📝 The State of DevSecOps ⚠️ 2.3M Chrome and Edge browsers infected by malicious extensions 🤔 Is it still worth using jQuery? 🪦 10 dead influential programming languages 💻...
Dev Digest 177: Blockchain, jQuery and a Prompt Playground

From learning to earning

Jobs that call for the skills explored in this talk.

Rust and GoLang

Rust and GoLang

NHe4a GmbH
Karlsruhe, Germany

Remote
55-65K
Intermediate
Senior
Go
Rust