Skip to content

Commit 7a495ed

Browse files
Add coin-gated tracks example app (#14012)
## Summary - New example web app at `packages/web/examples/coin-gated/` demonstrating token-gated track browsing and streaming using artist coins - Supports two auth paths: Audius OAuth (PKCE) and direct Solana wallet signing (Phantom) - Uses `sdk.coins.getCoinByTicker()` to look up coins, `sdk.users.getTracksByUser()` with `gateCondition: ['token']` to list gated tracks, and `sdk.tracks.streamTrack()` for authenticated streaming - Companion API changes in AudiusProject/api#738 ## Test plan - [x] `cd packages/web/examples/coin-gated && npm install && npm run dev` - [x] Enter a coin ticker (e.g. `YAK`) and verify coin info + gated tracks load - [x] Sign in with Audius OAuth and verify access status updates on tracks - [x] Connect Phantom wallet and verify wallet-based streaming works - [x] Verify locked tracks show disabled play button when not authenticated 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
1 parent fb7fa68 commit 7a495ed

11 files changed

Lines changed: 5527 additions & 0 deletions

File tree

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
<!doctype html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="UTF-8" />
5+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
6+
<title>Coin-Gated Tracks – Audius Web Example</title>
7+
</head>
8+
<body>
9+
<div id="root"></div>
10+
<script type="module" src="/src/main.tsx"></script>
11+
</body>
12+
</html>

0 commit comments

Comments
 (0)