Newsprint

Reading without leaving profiles of your principles.

A newspaper that charges by the article, and keeps no reading list

Every piece here costs 0.01 DEMO to read. You authorise a limit once, in your wallet, and after that reading costs no interaction at all — no popup, no confirmation, no second signature. The site draws against the limit you set and stops at it.

What the site does not do is remember what you read. A paper newspaper never knew which pages you lingered on; neither does this. The whole list of what it holds fits on a screen, which is the point of printing it in full.

You can watch the payment happen, too. The inspector at the foot of every page shows the accounts the page was rendered from.

  1. The error log that keeps a reader's spending

    A failed charge returns a number, and the number does not say which program raised it. The answer is in the transaction logs. The same logs carry the reader's meter and spending, one step from the reader's wallet, so a site that forwards them to an error tracker builds the profile it set out not to keep.

    4 min · 0.01 DEMO · · revised

  2. What the limit promises

    A reader who sets a limit on this site is not setting a reading budget. The site signs every charge alone and can charge up to the limit whenever it likes. The limit is the most the reader can lose to the site. Three other numbers, written once when the site is set up, decide everything else.

    6 min · 0.01 DEMO · · revised

  3. The request nobody made

    Up to this writing, this site charged for an article on a GET. A browser makes that kind of request whenever it likes. Moving the charge to a POST closed a hole. The same move also removed the longest silent wait on the site.

    8 min · 0.01 DEMO · · revised

  4. The ID of what's paying

    Every site that monetizes itself reaches for the same shape first: prove who you are, then we'll leverage your use. A meter does not need that. What a page view needs to know is which meter it draws on, and whether the browser in front of the site is the one that meter names. Neither is a person.

    6 min · 0.01 DEMO · · revised

  5. Two orderings that disagree on purpose

    When this site charges for a page, the site records the grant without waiting for the chain to confirm. When a reader closes the meter, the site waits for the chain and then checks the account before deleting anything. The two orders are opposite on purpose. Making them match would put a bug in one of them.

    9 min · 0.01 DEMO · · revised

  6. The first transaction, and the one that counted

    On 5 September a validator accepted the first transaction this site's server ever built, and sol-pay touched the chain for the first time. The sol-pay client library's specification had already written down what would count as proof, and a transfer was not it. The proof came two days later, when a reader's metering call settled.

    5 min · 0.01 DEMO · · revised

  7. What a dime has to do

    At a penny, pay-per-view cannot come near what advertising earns. At about a dime it can, without tracking anyone, if one page view in five is paid for. A trial of sol-pay should claim exactly that. The trial should then measure what nobody has measured yet: how many readers pay at that price.

    9 min · 0.01 DEMO · · revised

Inspector

Short names like SPDApep are this site's invention and mean nothing to a wallet or an explorer — how to read the inspector.

The values, in full

TRSYulm 3W8eXPrBJvDrx3WFpnr2SqbHETekDc28Y6aZUL7WesC5The site treasury: [AUTHarc, TKPGjog, MINTpep] + bump, by the associated-token program
AUTHarc 8u6tjBQSt3UVHfQDzDEk6Njty5SD3Vumu8XecYqs4CJmThe site authority: a keypair first-run setup generated; this site holds it
SPDAlox HWqfjK2EDzRqtMWuHxCKk4wwbemHZHv7Fd9R4HN8781FThis site's account: ["site", AUTHarc] + bump, by PIDash
MINTpep HgxxqvXLPAzDNJf59dGXJ4cNR3CQP9K7DiSnzLxq99X3The token mint: a keypair first-run setup generated; it has no seeds
PIDash F8UDAGgxVTm8Vmh4RmskpMBCFqhRvuTqbDxDCj8UMedLThe metering program: deployed to this cluster; nothing derived it
TKPGjog TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DAThe token program: a fixed address, the same on every Solana cluster

Treasury

treasury token account TRSYulm
balance 0 DEMO (0 base units)
owner AUTHarc

Site account, decoded

site account SPDAlox
authority AUTHarc
mint MINTpep
treasury TRSYulm
item price 0.01 DEMO (10000 base units)
collection threshold 0.1 DEMO (100000 base units) — 10 views
minimum limit 0.5 DEMO (500000 base units) — 50 views
bump 254
mint decimals 6

Deployment

metering program PIDash
token program TKPGjog
cluster devnet
endpoint https://api.devnet.solana.com