Documentation

Quick Start

Run all Cylend services and complete your first lending operation

Note

Make sure you've completed the Installation and Configuration steps before proceeding.

Important

MVP Notice: This MVP currently only supports USDC token. You'll need USDC on Mantle Sepolia to test the lending functionality.

Start All Services

Cylend requires three services to run. Open three separate terminal windows:

1

Terminal 1: Ponder Indexer

Start the event indexer first. It provides the GraphQL API that other services depend on.

Terminal
cd cylend-indexer
npm run dev

Wait until you see: GraphQL API running at http://localhost:42069/graphql

2

Terminal 2: Backend Service

Start the action processor. This automatically processes pending encrypted actions.

Terminal
cd cylend-service
npm run dev

You should see: ✓ Monitoring for actions...

3

Terminal 3: Frontend

Start the Next.js frontend application.

Terminal
npm run dev

Open http://localhost:3000 in your browser.

Your First Lending Operation

Follow these steps to complete a basic supply and borrow workflow:

1

Connect Your Wallet

Click "Connect Wallet" and select your preferred wallet. Make sure you're on Mantle Sepolia network.

2

Get Testnet Tokens

Visit the faucets to get testnet tokens:

3

Create a Deposit

Navigate to the Deposit page. Enter an amount and create a deposit bucket. This locks your funds in the Ingress contract.

4

Supply Collateral

Go to the Allocate page. Select your deposit and supply amount. This action is encrypted and sent to Sapphire.

5

Wait for Processing

The backend service automatically processes your action. Watch Terminal 2 for processing logs. Your position will update on the Dashboard once complete.

6

Borrow Against Collateral

Navigate to Borrow. Enter a borrow amount (within your health factor limits). Once processed, funds will be released to your wallet!

Tip

Watch the Settlement Records page to track your action status in real-time. Actions progress from "Pending" → "Processing" → "Completed".

Verify Everything Works

Ponder GraphQL playground accessible at localhost:42069/graphql
Backend service shows "Monitoring for actions..." message
Frontend loads and wallet connection works
Dashboard displays pool data and your positions
Deposit creation transaction succeeds

Troubleshooting

Ponder won't start

Check RPC URLs in .env. Ensure they're accessible with curl https://rpc.sepolia.mantle.xyz

Frontend shows "Failed to fetch" errors

Make sure Ponder is running first. Check NEXT_PUBLIC_PONDER_API_URL matches Ponder's address.

Actions stuck in "Pending"

Verify the backend service is running and OWNER_PRIVATE_KEY has permissions to call processAction.

Transaction fails with "insufficient funds"

Get testnet tokens from faucets. You need MNT for Mantle gas and ROSE for Sapphire gas.

For more issues, see the Troubleshooting Guide.

Next Steps