Leehog Solutions

// Trading terminal

LEDEX.

A non-custodial Hyperliquid trading terminal. I designed and built the whole thing: chart, order book, ticket, blotter, and an AI side panel.

Spot, perps, and HIP-3. You connect a wallet and trade. Hyperliquid keeps the funds.

ledex · terminal
LEDEX trading HUD with BTC chart, order ticket, positions blotter, and AI railLEDEX market picker for perps, TradFi, and spotLEDEX order ticket with leverage, size, TP/SL, and a live ADA positionLEDEX AI rail with a drafted ticket and Apply to ticket already appliedLEDEX AI proposing reduce-only tickets with Apply to ticket buttonsLEDEX HUD on Hyperliquid testnet with chart, ticket, and empty blotter

Terminal

3

market types: spot, perps, HIP-3

2

networks in one UI

1

wallet to start trading

AI

fills the ticket, never places

// What it does

Chart, ticket, and wallet on one screen.

One screen

Chart, order book, ticket, and positions in one place. Pick a market, size an order, confirm it.

Your wallet

Connect, deposit USDC to Hyperliquid, withdraw back to the same address. LEDEX never holds funds.

AI rail

Bring your own key. It can research a market and fill the ticket. It cannot place the order.

Your layout

Drag widgets around. Extra charts and news sit below. Layout saves in the browser.

// Architecture

How it is built.

The terminal

Next.js App Router in TypeScript. A grid for the desk, Zustand for layout and ticket state, TanStack Query for reads.

Next.jsTypeScriptTailwindZustandTanStack Query

Wallets

RainbowKit and wagmi for connect. Orders are signed in the browser. Deposits and withdrawals always use the connected wallet.

RainbowKitwagmiArbitrum USDC

Data

Hyperliquid HTTP plus one WebSocket. Postgres is only for saved prefs, encrypted AI keys, and chat. The terminal still trades if it is down.

@nktkas/hyperliquidDrizzlePostgreSQLDigitalOcean

// Engineering deep dive

The parts I am proud of.

Four areas where I spent extra time getting the details right.

01

Non-custodial

  • Hyperliquid does matching, balances, and settlement
  • Deposit native Arbitrum USDC to the official bridge
  • Withdraw back to the connected wallet
  • Order keys stay in the browser, never in the database
02

Trading

  • Limit or market, isolated or cross, with TP/SL
  • Close or partial-close reduce-only
  • Edit position TP/SL without dropping leverage on an exit
03

AI

  • Bring your own key. Written keys are encrypted
  • Live context: book, account, charts, news
  • Apply to ticket fills the form. It never places
04

Testnet and mainnet

  • Switch in the UI, not a separate build
  • Wallet follows: Arbitrum Sepolia or Arbitrum

// Built with

TypeScriptNext.jsReactTailwindZustandTanStack QueryDrizzlePostgreSQLRainbowKitwagmiHyperliquidDigitalOcean

Need something similar?

This is the level of work I bring to client projects. Tell me about your business and I will tell you how I would approach it.