back to praxis

economics

pricing

deploy fee
  0.005 ETH one-time                        // on-chain fee, paid in ETH on Optimism
  covers: container setup, Traefik route, initial config, 2 years hosting

domain
  cost pass-through from NameSilo          // no markup — you pay what the registrar charges; free WHOIS privacy
  first 2 years included with deploy fee    // bundled, no separate charge
  annual renewal at actual domain cost     // paid in ETH, no platform surcharge

self-host
  $0                                       // free forever. fork, build, run.
  no dependency on Praxis infrastructure   // your data, your keys, your uptime

infrastructure costs

servers
  Hetzner CPX31                            // 4 vCPU, 8GB RAM, ~$30/month
  multi-tenant: one process serves all     // no per-artist containers for normal traffic
  dedicated containers only for viral      // auto-promoted at >200 concurrent connections

at scale
  10 artists: multi-tenant (1 server)      // ~$30/month total
  100 artists: multi-tenant (1 server)     // ~$30/month total
  1,000 artists: multi-tenant (1 server)   // ~$30/month total
  10,000 artists: multi-tenant (2-3 servers) // ~$60-90/month total
  10,000 + 10 viral: + 10 dedicated        // ~$120/month total
  // multi-tenant keeps costs near zero until viral traffic hits
  // dedicated containers auto-scale and auto-demote

registration bundle
  deploy fee: 0.005 ETH                    // covers container + hosting + 2yr domain
  domain purchase included                 // NameSilo integration, cost pass-through
  // one payment, artist gets site + domain + 2 years hosting

sustainability
  self-sustaining model                    // ETH deploy fee -> domain purchase + hosting
  hosting sustained by deploy fees         // 0.005 ETH per artist covers years of hosting
  + domain renewals                        // annual, at-cost pass-through
  // no venture capital, no ads, no data sales

auto-scaling

monitoring
  checks every 5 minutes                   // memory usage + container count per server

threshold
  80% memory usage                         // triggers new VPS provisioning
  or 50 containers on a single node        // whichever comes first

provisioning
  Hetzner Cloud API                        // auto-provision new server
  DNS configured automatically             // new node added to pool
  Traefik routes propagated                // zero manual intervention

result
  no downtime during scaling               // new artists always have capacity
  no manual intervention required          // fully automated infrastructure

revenue model

platform fees on transactions
  media sales: 0%                          // 100% to artist (+ collaborator splits)
  ticket resales: 0%                       // 100% to seller
  project funding: 0%                      // 100% distributes per team splits
  revenue sharing: 0%                      // 100% between funders and team

// no platform fee on any transaction
// ETH goes directly between wallets via smart contracts
// praxis never touches artist money

how hosting is sustained
  deploy fees (0.005 ETH one-time)         // covers infrastructure costs
  domain renewals (annual, at cost)        // pass-through from registrar
  // that's it. no hidden fees. no future monetization of your data.

sponsored registration
  deployer-sponsored invites               // deployer covers the 0.005 ETH deploy fee
  artist-sponsored invites                 // any registered artist can sponsor new artists
    deposit 0.0052 ETH per invite           // 0.005 deploy fee + 0.0002 gas, held in escrow
    domain cost additional (on-chain)      // forwarded to treasury
    trustless — funds held by contract     // ArtistSponsoredInvites at 0x15F5f22F130ecEF5eee15d9BA90bB73B287a4F6A
    revocable — reclaim unredeemed deposits // sponsor can revoke anytime before redemption
    EIP-712 front-running protection       // orchestrator sig binds (codeHash, recipient, expiry, nonce)
  audience gas sponsorship                 // supporters register for free (gas covered)
  // artists sponsor artists. no deployer permission needed.
  // audience members never pay anything to join

on-chain credentials

token types (ERC-6909)
  TICKET                                   // transferable — event/tier access
  PRODUCER                                 // soulbound — funded a project tier
  CONTRIBUTOR                              // soulbound — completed a project

// all tokens soulbound except TICKET
// credentials are permanent proof of participation
// no speculative trading on reputation

media marketplace

PraxisMedia
  artists list media with price            // music, video, writing, art
  optional collaborator splits             // revenue distributed on-chain at purchase
  all tokens soulbound                    // no secondary market, no flipping

fees
  platform fee: 0%                         // 100% to artist (+ collaborators)
  // ETH goes directly between wallets via smart contract
  // praxis never touches artist money

ticket marketplace

PraxisTicketMarket
  secondary market for TICKET tokens only  // transferable tier tokens
  list, purchase, cancel, update price     // peer-to-peer resale
  pull payments (seller calls withdraw)    // no custody risk

what cannot be resold
  PRODUCER tokens                          // soulbound — you funded, it's yours
  CONTRIBUTOR tokens                       // soulbound — you built, it's yours
  media tokens                             // soulbound — no flipping art

fees
  platform fee: 0%                         // 100% to seller

project funding

tiered crowdfunding
  proposer sets tiers with prices          // each tier has name, price, max supply
  funders purchase tiers                   // mints TICKET (transferable) or PRODUCER (soulbound)
  liquid before threshold                  // withdraw funding anytime before goal met

lifecycle
  PROPOSED -> FUNDED -> CONFIRMED          // proposer + majority collaborators confirm
  -> COMPLETING (configurable dispute window) // funders can dispute during window
  -> COMPLETED                             // funds distribute per splits, CONTRIBUTOR minted

dispute protection
  configurable window (0-30 days)          // set by proposer at project creation, default 3 days
  window starts after proposer marks done  // funders vote with their funding weight
  >50% funded amount disputes              // auto-cancels, everyone gets refunds
  // no arbiter, no platform intervention — pure on-chain governance

fees
  platform fee: 0%                         // 100% distributes per team splits

treasury

self-sustaining auto-payment loop
  PraxisTreasury: 0x5CF9E88417A7cE08028D32C44F9b63bc3d960b21

flow
  artist registers                         // 0.005 ETH deploy fee
  -> ArtistRegistry                        // forwards ETH to PraxisTreasury
  -> orchestrator calls swapAndForward()   // after registration + on periodic interval
  -> PraxisTreasury swaps ETH -> USDC      // via DEX on Optimism
  -> USDC forwarded to EtherFi Cash        // auto-pays infrastructure bills

result
  zero human intervention                  // fully automated infrastructure funding
  deploy fees -> domains + hosting         // self-sustaining loop
  deployer can update treasury address     // ArtistRegistry.setTreasury() — owner-callable
  // deploy fees automatically become infrastructure payments

gas costs (Optimism L2)

live gas costs from Optimism RPC + current ETH price. gas amounts from Foundry contract test reports.

loading...

action gas used cost (ETH) cost (USD)

L1 data posting fees add a small additional cost per transaction. prices update on page load.

self-hosting

always free
  git clone https://github.com/taayyohh/praxis
  cd praxis && npm install
  // edit site.json with your info
  node build.js && PORT=3000 node server.js

what you get
  all modules                              // music, credits, gallery, writing, video, film, technology, education
  all 6 templates                          // default, musician, visual, writer, performer, filmmaker
  on-chain features                        // projects, feed, media, library
  XMTP messaging                           // peer-to-peer, no server needed
  persistent audio player                  // soft-SPA navigation
  i18n (18 languages)                      // auto-detect + manual switcher
  screenplay/script editor                 // Fountain format + stage play
  journal with blog export                 // encrypted private journal -> public blog
  embedded wallet                          // self-hosted BIP-39, no MetaMask required
  3,300+ tests (vitest + foundry + e2e)    // runs before every deploy

what you control
  your data                                // site.json, journal, content — all local files
  your keys                                // wallet is your identity, not our auth server
  your uptime                              // no dependency on ourpraxis.network
  your code                                // fork and modify anything

domain lifecycle

purchase
  search domains (NameSilo API)            // or bring your own domain
  cost pass-through, no markup             // you pay registrar price
  first 2 years included with deploy fee

renewal
  60 days before expiry                   // warning banner on your site
  30 days before expiry                   // second warning
  7 days before expiry                    // final warning
  pay in ETH                               // at actual domain cost, auto-renew

grace period
  domain expires                           // site stays up during 30-day grace
  30 days past expiry                     // container suspended (docker stop)
  90 days past expiry                     // data archived, container removed

your data is always exportable
  on-chain data is permanent               // identity, posts, credentials survive regardless
  self-host if you choose not to renew     // fork, build, run on your own server

comparison

praxis bandcamp spotify patreon
ownership self-owned site platform page platform profile platform page
data portability full export + on-chain limited export no export limited export
platform fee 0% 15% on digital ~70% of revenue 5-12%
payment method ETH (direct) credit card (via platform) streams (via platform) credit card (via platform)
self-host option always free no no no
upfront cost 0.005 ETH one-time free (they take a cut) free (they take a cut) free (they take a cut)
ongoing cost domain renewal (at cost, ~$5-8/yr) 15-30% of revenue $0 but keeps 30%+ of streams 5-12% of earnings
who owns the audience you (on-chain follows) bandcamp spotify patreon
censorship resistance on-chain + self-host platform ToS platform ToS platform ToS
if platform shuts down your site still works everything gone everything gone everything gone

the tradeoff is clear: 0.005 ETH once and you own everything, or $0 upfront and the platform owns you.