Skip to content

Repository files navigation

Tessera Logo

USDC support engine for self-hosted platforms
Optional tips on free content. Per-second support on exclusives. Sidecar plus a plugin on your instance.

Build Status Version License
Node.js TypeScript Circle x402 Arc Testnet


Live Playground · Documentation

Self-hosted platforms own the stack, then lose the audience to platforms that can take money. Tessera sits next to your instance so fans can support creators and hosts in USDC.

demo_tessera_web.mp4

Who gets what

What they get
Instance admin A configurable share of per-second support to help cover hosting
Creator Tips on free content. Per-second support on exclusives. USDC to their wallet
Fan Free content stays open; tip is one tap when they choose. On exclusives they pay for the seconds they watch

How support works

Free (tessera:free) Exclusive
Player Stays open Unlocks after a USDC deposit
Billing None until they tip Per second while they watch
Tip Manual, one tap Same leftover Gateway balance

On exclusives, creators and instance admins can share per-second earnings. Tips go to the creator. Leave ends billing. Replay works. Cash-out sends leftover USDC to the viewer's wallet.

Live plugins

Install Tessera, then the plugin for your platform. Settings and screenshots live in each repo.

Platform Modes Plugin
PeerTube Per-second + tips peertube-plugin-tessera
Jellyfin Per-second + tips jellyfin-plugin-tessera
Piwigo Tips on public photos piwigo-plugin-tessera

Another host: a connector that calls sessions/start, sessions/stop, and tips. Contract: CONNECTOR_SPEC.md.

Viewer and plugin meet Tessera. Tessera bills tips and per-second USDC to the creator.

The plugin reports play and leave. Tessera's overlay handles unlock, tips, and cash-out. Settlement is USDC on Arc Testnet.

Why Arc Testnet

Ticks are off-chain each second. Deposit and cash-out use USDC for gas. Circle CCTP can fund the SCA from Ethereum Sepolia, Base Sepolia, or Arbitrum Sepolia.

More: docs/ARCHITECTURE.md

Quick start

Run Tessera, then install the plugin for your platform. Use the same ingest secret in both.

git clone https://github.com/JaDi03/tessera.git
cd tessera
npm install
cp .env.example .env
# CIRCLE_API_KEY, CIRCLE_APP_ID, MASTER_KEY, TESSERA_INGEST_SECRET
npm run build
npm start

Plugin repos are in the table above. Env, Base URL, and deploy.sh: Getting Started. Overlay login: Viewer wallet.

License

Apache-2.0. See LICENSE.

About

Platform-agnostic USDC nanopayment sidecar for self-hosted platforms. Powered by Circle x402 on Arc.

Topics

Resources

Contributing

Stars

12 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages