Case studies/Crypto & DeFi
Liquid wrappers · backend and frontend

Pirex

2021 - 2022 product moved into llama.airforce

Liquid wrappers for vote-locked governance tokens in the Curve and Convex ecosystem (pxCVX), later extended to GMX.

Overview

Pirex, part of the Redacted ecosystem, offered liquid staking wrappers, auto-compounders and yield futures. Its first wrapper, pxCVX, made vote-locked Convex liquid: users could hold a tradable token instead of locked vlCVX, and sell their future bribes and votes for upfront liquidity. Pirex GMX then brought the same idea to GMX, with liquid wrappers for staked GMX and staked GLP issued as pxGMX and pxGLP.

Data Subsystems did backend and frontend development. In January 2023, pirex.io was a statically exported Next.js app built with Mantine. It opened on a terminal-style landing page showing total locked CVX and total value, with a prompt to type 'help', and a Launch app link into the product: Easy, Standard and Expert modes, a redemptions area, and terms and privacy pages.

In Easy Mode, yield from staked GMX and GLP compounded automatically into more pxGMX or pxGLP; in Standard Mode it was paid out as pxGMX and pxGLP for the user to claim. The pirex.io domain now redirects to Llama Airforce, where pxCVX lives on with deposits, redemptions, a Curve pool swap and claims for future rewards.

The shipped front end says what it was built from. Pirex ran on Next.js and React with Mantine over Emotion for the interface, and the Web3 layer is the familiar pairing: wallet connection through RainbowKit on top of wagmi, with connectors for injected wallets and MetaMask, WalletConnect, Coinbase Wallet, Ledger, Trust and Brave; chain calls through viem and ethers; Alchemy and Infura as RPC providers so the app does not depend on a single node; CoinGecko for prices; zustand holding client state; Yup validating the forms where a user commits funds.

What was built

Stack

Frontend

Next.js
Static export of the site and app, with tabbed routes for each mode and for redemptions
React
UI layer of the Next.js app, from the terminal landing to the mode screens
Mantine
Component library, present in the archived January 2023 markup
Mantine + Emotion
Component library and styling for the app interface
zustand
Client state for the wrapper, staking and redemption flows
Yup
Validation on the forms that move funds

Web3

Convex vlCVX
The vote-locked position that pxCVX wraps into a liquid token
GMX and GLP staking
Staked positions wrapped by Pirex GMX as pxGMX and pxGLP

Web3

wagmi + viem
Accounts, connectors, reads and writes against the contracts
RainbowKit
Wallet connection and account UI
WalletConnect and wallet connectors
Injected and MetaMask, WalletConnect, Coinbase Wallet, Ledger, Trust and Brave
ethers.js
Contract interaction alongside viem
Alchemy + Infura
RPC providers, so the app is not tied to one node
CoinGecko
Price data behind the displayed values

Engineering highlights

The app was organized as three mode-based route trees, Easy, Standard and Expert, each with tabbed screens, plus a separate redemptions area under Standard.

The product outlived its site: pxCVX still runs inside Llama Airforce, and pirex.io redirects there.