Use the app
Getting started
Connect a wallet, read the network lamp, and follow a transaction from simulation to finalized.
The app lives at /app. It reads pools, positions and hook state from chain through the Socket API and asks your wallet to sign every change. Socket never holds your keys and never sends a transaction you haven't signed.
Connect a wallet#
Open the wallet menu
Press Connect wallet in the top right of the app. Socket lists every installed browser wallet that supports the Wallet Standard: Phantom, Solflare, Backpack and others.
Approve the connection
Your wallet asks whether to share your public address with the site. Socket reads nothing else.
Check your balances
The wallet menu shows the SOL and token balances the app can see, and the address you're connected with. Use Disconnect there to switch wallets.
You need a little SOL in the wallet for network fees. The first time you receive a token, the same transaction also creates your token account for it, which locks about 0.002 SOL as rent.
The network lamp#
The lamp next to the wallet button names the Solana network the app uses and shows whether its data is up to date:
| Lamp | Meaning |
|---|---|
| Lit copper | Pool and swap data is up to date. The latest slot sits next to it. |
| Blinking amber | Pool lists and recent swaps may be out of date. Quotes, balances and positions are still current. |
| Red ring | Socket can't be reached. Nothing can be quoted or prepared until it is back. |
How a transaction runs#
Every change in the app follows the same path. The dock at the bottom of the screen shows the last four stages as lamps:
Prepared
The Socket API builds an unsigned transaction from finalized chain state: the instruction, the accounts it touches and a recent blockhash. The API never signs anything.
Simulated
The app simulates the transaction against the cluster before your wallet sees it. If the simulation fails, it stops here and tells you why, and nothing is sent.
Signed
Your wallet shows the transaction and asks you to approve it. Rejecting it ends the attempt; nothing has been sent.
Confirmed
The transaction is in a block that a supermajority of validators voted for. It is very unlikely to be dropped from here.
Finalized
The block can no longer be rolled back. The app refreshes balances, pools and positions now, because Socket shows finalized data only.
The dock shows the compute units the transaction used and how many of those its hook calls took. If the app loses contact with the network for a moment, it keeps checking instead of marking the transaction failed. A transaction is reported as expired only after the app has checked the chain's history for it.