Royalty splitter for Imogen Heap's Tiny Human, the first commercial music release with payments settled by an Ethereum smart contract (October 2015).
Historical Significance
The first commercial music release in history whose royalty splits were settled by an Ethereum smart contract. Predates Ujo Music (Consensys' formal music platform spinout), Audius, and every later Web3 music protocol. Mycelia was Imogen Heap's vision for a decentralized music database with payment rails enforced by smart contracts; this Tiny Human deployment was the proof of concept. BlockApps, the company that built the contract, was the first independent enterprise Ethereum company (founded 2015 in New York). The contract's existence is the original on-chain receipt of music's encounter with Ethereum.
Context
Deployed 1 October 2015, two months after Ethereum's Frontier mainnet launch on 30 July 2015. Solidity was at v0.1.x; the first npm release of solc-js was less than a year old. There were no formal token standards, no NFTs, no ERC-20, and no marketplace tooling. BlockApps had to invent the entire commerce surface from scratch (board governance, oracle feeds, audit logging, share-weighted distribution). The contract is one of the very first non-trivial commerce contracts deployed on Ethereum mainnet.
Key Facts
Description
On-chain royalty splitter built by BlockApps for Imogen Heap's release of 'Tiny Human' on her Mycelia platform on 1 October 2015. By Wikipedia's accounting the contract had taken in roughly $133.20 by 2017, modest in dollar terms but historically the first commercial music release whose royalties were settled by an Ethereum smart contract.
The selector surface tells a complete commerce story. purchase(bytes32) is the customer entry point: callers pay either a per-track price (USDDOWNLOADPRICE / downloadPriceInWei) or a per-stem price (USDSTEMPRICE / stemPriceInWei), and the contract splits the incoming wei across the eight credited contributors according to the shares mapping. The USD-to-wei conversion uses an off-chain oracle (oracle, usdEthPrice, priceLastUpdated, setNewOracle) so the on-chain prices float with the ETH/USD rate.
Governance is a 3-of-N board: three named directors (BOARD_1, BOARD_2, BOARD_3) can vote to change the admin via changeAdminFromBoard(address). The admin then has setter access for prices, beneficiary addresses (setAddr(uint, address)), and the BlockApps service address (setBlockappsAddr). Every purchase and ownership transfer is logged on chain (txCount / txLog, transferCount / transferLog), and transferRightIfApproved(address, bytes32) lets a buyer reassign a purchased download or stem to another address.
The contract hard-codes the names of the eight credited stem contributors in its constructor: Imogen Heap, Stephanie Appelhans, Diego Romano, Yasin Gundisch, Hoang Nguyen, Simon Minshall, David Horwich, and Simon Heyworth. Compiled with Solidity v0.1.x and deployed by BlockApps at 0x421291621428555e77f5ad58f217c9efa84d901f.
Source Verified
Identified by selector decode (TOTALSHARES, BOARD_1/2/3, stemPriceInWei, downloadPriceInWei, etc.) plus hard-coded constructor strings naming the eight Tiny Human stem contributors. Original source not published by BlockApps; Palkeoramix decompile attached (decompiler failed on most functions due to v0.1.x bytecode shape). A full near-exact reconstruction is plausible but requires manual work.
Heuristic Analysis
The following characteristics were detected through bytecode analysis and may not be accurate.
Frontier Era
The initial release of Ethereum. A bare-bones implementation for technical users.
Bytecode Overview
External Links
Related contracts
token
Same eraAn early ERC-20-like token deployed in Ethereum's first week, built directly from the example in the official Ethereum Frontier Guide documentation.
0x8374f5...46609aAugust 7, 2015token
Same eraA second deployment of the FirstCoin tutorial token by the same creator, 11 blocks after the original — both derived from the official Ethereum Frontier Guide e
0x3b4446...295f52August 7, 2015Contract 0xd958b5...ec4c9f
Same eraEthereum.org tutorial Coin contract deployed on Frontier day 1. Contains a bug: balance(address) ignores its argument and returns msg.sender balance.
0xd958b5...ec4c9fAugust 7, 2015NameRegistry
Same eraFixed-fee name registry from Day 9 of Ethereum (Aug 8, 2015). Reserve names for 69 ETH, resolve addresses. A precursor to ENS.
0xa1a111...b8af00August 8, 2015token
Same eraEarly tutorial-derived coin contract compiled with Solidity v0.1.1, deployed 9 days after Ethereum Frontier launch.
0x3c401b...da1634August 8, 2015token
Same eraTutorial-derived coin contract (Solidity v0.1.1), one of multiple token instances deployed by the same address on Aug 8, 2015.
0x33e986...395d13August 8, 2015