A

Gerolamo — Browser Cardano Node

Your browser becomes a Cardano node. Syncing the Preprod testnet via native Ouroboros mini-protocols — no REST API, no centralized backend.

Traditional Wallet

SINGLE POINT OF FAILURE
Your Wallet
API Server (Blockfrost etc.)
^ If this dies, you're blind
Blockchain
API server processes & interprets all data
API key required, rate-limited
Server down = wallet cannot read chain
You trust the server's response

Gerolamo (This Page)

NO SINGLE POINT OF FAILURE
Your Browser = Node
^ YOU are the node
Ouroboros
WS Bridge (dumb pipe)
^ Replaceable
Cardano P2P
Browser runs Ouroboros protocol natively
No API key, no rate limit
Bridge down? → Connect to another bridge
Verify chain data yourself — trustless
Idle — Ready to sync

Ouroboros Protocol Log

0 entries

Press "Start Preprod Sync" to begin syncing via Ouroboros ChainSync.

Gerolamo is an alternative Cardano node implementation written entirely in TypeScript by HarmonicLabs. Unlike the official Haskell cardano-node, it runs on the Bun JavaScript runtime.

The key library — @harmoniclabs/ouroboros-miniprotocols-ts — implements the Ouroboros networking protocols (Handshake, ChainSync, BlockFetch) in a transport-agnostic way. It works over TCP (Node.js/Bun) or WebSocket (browser).

This page loads that library directly in your browser. When you click "Start", your browser opens a WebSocket to a transparent TCP bridge, then speaks the native Ouroboros protocol to a Cardano Preprod relay — exactly what a full node does.

How This Page Works

🖥️

Your Browser (= Gerolamo Node)

Runs @harmoniclabs/ouroboros-miniprotocols-ts. Executes Handshake → ChainSync → BlockFetch. Parses real CBOR-encoded blocks.

🔌

WebSocket ↔ TCP Bridge

Transparent byte-level proxy. Does NOT interpret protocol data. Just converts WebSocket frames ↔ TCP stream.

🌐

Cardano Preprod Relay

Standard Cardano relay node on the Preprod testnet P2P network.

Why This Matters

  • No API keys. No rate limits. No single point of failure.
  • If this bridge goes down, connect to any other Ouroboros-compatible WebSocket relay. Your browser runs the protocol — the infrastructure is interchangeable.
  • This is what "decentralized" actually means: the client doesn't depend on any specific server to access the blockchain.