Rhea

Rhea is a DeFi Protocol for Managing Liquidity Positions on NEAR

Rhea is a NEAR liquidity protocol where a provider selects a Classic or concentrated market, deposits the required NEP-141 assets, signs the wallet transactions, and checks the resulting LP position before withdrawing. A Classic deposit follows the pool's existing two-token ratio and returns fungible LP shares. A concentrated-liquidity deposit adds a lower and upper price bound and produces a position NFT. The dependable sequence is to check token registration and available balances, choose the pool mode, review every amount in the wallet, confirm the new position under Your Liquidity or Portfolio, and remove part or all of it when the assets should return to the wallet.

Key takeaway: A concentrated position earns from swaps only while its liquidity sits inside the two selected price bounds.

Avoiding an underfunded two-token deposit

The first Rhea liquidity mistake is choosing a Classic pool before confirming that both required token balances are spendable.

Classic pools hold exactly two assets and preserve the reserve proportion implied by x × y = k, the constant-product structure associated with Uniswap v2. Entering one amount makes the form calculate the other, so the smaller wallet balance sets the maximum balanced deposit. Check the exact asset identifiers as well as their tickers: native NEAR and wNEAR use different token representations, while USDC and USDC.e occupy separate NEP-141 contracts. A balance held on another chain or under another contract won't satisfy the selected pool form.

Keeping a spendable NEAR balance outside the deposit covers transaction execution and any contract-storage registration required during the sequence.

Which pool mode matches the deposit you intend to make?

Rhea's Classic mode fits proportional two-asset deposits, while its CLMM mode fits positions defined by a chosen price interval.

Classic liquidity extends across the full constant-product curve and produces fungible LP tokens. The concentrated liquidity market maker, or CLMM, derives from iZUMi Finance's discretized concentrated liquidity design. It places capital between two selected bounds and divides that interval into bins. Only liquidity in bins reached by swaps participates in that activity. Three documented distribution shapes - Uniform, Normal, and Skewed - describe how capital can spread through the selected interval.

The decision turns on position control. Choose Classic when the intended action is a balanced deposit at the pool's existing ratio. Choose concentrated liquidity when the deposit needs explicit lower and upper bounds and the position will be reviewed as a separate NFT. That choice remains visible after confirmation as either fungible shares or one bounded position.


Wallet and token prerequisites

A Rhea liquidity deposit requires a connected NEAR account, the exact pool assets, token registration, and a spendable NEAR balance.

Token registration and asset identity

NEP-141 balances

NEP-141 gives fungible tokens a common transfer interface, while NEP-148 supplies metadata such as the name, symbol, and decimal precision shown by wallets. The metadata specification uses the version string ft-1.0.0. wNEAR uses 24 decimal places, whereas USDT uses 6, so raw contract amounts differ sharply even when the interface presents ordinary token units. NEP-141 requires calls to ft_transfer and ft_transfer_call to attach exactly 1 yoctoNEAR.

Storage under NEP-145

NEP-145 registration reserves storage so a token contract can track an account's balance. Registration normally occurs once for each account-and-contract relationship, and the required storage amount belongs to that token contract's configuration. One NEAR equals 10^24 yoctoNEAR, so the 1 yoctoNEAR transfer attachment is a protocol guard rather than the complete execution cost.

Wallet review before signing

The wallet request should identify the selected asset contract, the amount being transferred, and the receiving contract call. A first interaction can present separate registration and deposit approvals. Read each one in order instead of assuming that the first signature completes the position. The usable balance should still leave enough NEAR for the final approval and any return transfer during withdrawal.

A Classic deposit keeps the pool ratio

A Classic Rhea deposit succeeds when both token amounts match the pool's current reserve proportion at the moment of signing.

Open the selected Classic pool, choose Add Liquidity, and enter the amount of either asset. The interface calculates the matching quantity for the second asset. Changing the first input recalculates the second; choosing the wallet maximum for one side lets the lower proportional balance determine the deposit. Review both computed amounts before approving because the pool ratio, rather than the wallet's total value, controls the pair.

Every changing input in this worked example is hypothetical: the pool shows 4 USDC per 1 wNEAR, the user enters 25 wNEAR, and the wallet holds 140 USDC. Rhea computes 25 × 4 = 100 USDC. The completed deposit therefore uses 25 wNEAR and 100 USDC, leaving 40 USDC outside the position. The arithmetic confirms balance sufficiency; it doesn't predict either token's market value.

Once the calls complete, the Classic position appears as fungible LP shares tied to that specific pool and its two reserve assets.

A concentrated position starts with two price bounds

A Rhea concentrated-liquidity position starts with two valid price bounds and allocates the deposited pair across discrete bins.

Choosing the price interval

The form needs a lower bound, an upper bound, and the token amounts. Confirm which asset serves as the quoted unit before interpreting either price. The interface aligns a requested bound to a valid slot or bin border, so the accepted number can differ slightly from a freely typed decimal. The CLMM maps prices with 1.0001 raised to an integer point and limits points to the half-open interval [−800000, 800000).

Across four predefined CLMM configurations, valid slots advance by 1, 8, 40, or 200 points. That granularity explains why two nearby pools or ranges don't necessarily expose identical selectable boundaries.

Inventory inside and outside the range

Liquidity participates while the market moves through its selected bins. As swaps cross the range, the position's composition shifts between its two assets. Once the market moves beyond one endpoint, the position becomes entirely one asset; the opposite endpoint produces the other asset. Returning inside the interval makes the remaining liquidity active in its bins again.

Creating or extending a position

Adding to a pair that already has a position presents two paths: increase the existing position or create another position with different bounds. Increasing preserves the recorded interval. Creating another produces a separate NFT, which keeps its own range and amounts even though both NFTs refer to the same token pair.

How do you confirm the position after signing?

Seen from the other side, Rhea confirms a liquidity deposit by showing the new pool share or range position after the signed transactions reach success.

There are two interface locations for this check: Your Liquidity and the liquidity area within Portfolio. A Classic, Stable, or Rated position uses fungible LP tokens, where 1 LPT represents 1 pool share and 0.25 LPT represents 0.25 pool shares. A DCL position uses one NFT carrying its selected range and share details; that NFT can likewise represent 1 share, 0.25 share, or another fractional quantity. These records identify what the deposit created.

Match the displayed token pair, pool type, share quantity, and underlying token amounts against the confirmation preview. A successful wallet status proves that the submitted call executed. The position screen completes the operational check by showing that the expected pool record now belongs to the connected NEAR account.

Reading a Classic LP token balance

A Classic LP token records a proportional claim on the pool's two reserves rather than preserving the original deposit quantities.

Swaps change the reserve composition, so the two token amounts represented by a fixed LP balance move over time. Your Liquidity shows the share count, its displayed value, and the amount of each reserve asset represented by those shares. The LP token quantity is the position unit to confirm; the underlying token estimates explain what a withdrawal would currently return.

Shares committed to a Rhea farm aren't available in the pool's removal form until they're unstaked. If only part of the LP balance is committed, the uncommitted share count remains available for withdrawal.


Reading a concentrated-liquidity NFT

A concentrated-liquidity NFT records one range-specific Rhea position, including its bounds, liquidity shares, and accumulated token amounts.

Several NFTs can refer to the same CLMM pair because each NFT represents a separate interval or liquidity allocation. Read them individually. The important confirmation fields are the lower bound, upper bound, current token composition, and position amount. A range that no longer contains the market can display only one of the pair's assets, which follows the CLMM conversion mechanism rather than indicating a missing balance.

Swap-fee tokens remain separately claimable for a DCL position. Adding or removing liquidity triggers the transfer of unclaimed amounts to the wallet, while the dedicated Claim action leaves the underlying range position in place.

A clean withdrawal returns the underlying tokens

In the same way, Rhea returns the underlying pool assets when the user removes an available share or range position and approves the wallet call.

Unstake committed LP shares first.

For a Classic position, open Your Liquidity, choose Remove, and enter the share quantity. Selecting MAX requests 100% of the available Classic shares; a smaller quantity leaves the remaining shares in the pool. The withdrawal uses the pool's reserve state at execution, so the returned token quantities needn't match the original deposit amounts.

For a concentrated position, choose the relevant NFT before selecting a partial or complete removal. Those are two distinct withdrawal outcomes: partial removal reduces liquidity while retaining the recorded range, and complete removal closes that position's liquidity. Either action automatically transfers its unclaimed swap-fee tokens. Confirm the transaction, then check the wallet for both assets and the position page for the reduced or closed record.

The workflow suits hands-on NEAR liquidity providers

The Rhea workflow suits NEAR users who hold the exact pair and will inspect the recorded position after every deposit or withdrawal.

Classic liquidity asks for less range management, though it still requires two correctly proportioned balances and a confirmed LP-share record. Concentrated liquidity demands a clearer view of price orientation, two endpoints, bin alignment, and changing token composition. It fits a provider prepared to revisit the NFT when the market leaves the selected interval or when a new range becomes preferable.

Before the first approval, settle four decisions: the exact NEP-141 contracts, Classic or CLMM mode, the amount that remains outside the position, and the record expected after execution. After the final wallet confirmation, verify the LP token or NFT in Rhea. When exiting, remove only available liquidity, approve the return call, and reconcile the position against the two intended wallet assets.

Brown leather recliner with phone and drink holders
Brown leather recliner with open arm compartments and tray

Still wondering about Rhea?

Can I keep a small NEAR balance outside the liquidity pool?

Yes, keep a spendable NEAR balance outside the pool because the wallet pays for transaction execution and any required token-storage registration, while the exactly 1 yoctoNEAR attached to a NEP-141 transfer call is only a protocol-level authorization deposit and doesn't represent the complete network cost of adding or later removing liquidity from a Rhea position on NEAR.

Which wallet transaction details identify a Rhea liquidity deposit?

The identifying details are the receiving contract call, selected token contract, transferred amount, and connected NEAR account. A multi-call sequence can also show storage registration before the asset transfer. After approval, match those details with the pool pair and position type under Your Liquidity or Portfolio. The completed interface record should be a fungible LP balance for Classic liquidity or a bounded NFT for concentrated liquidity.

Why does Rhea fill the second Classic token amount automatically?

Rhea fills the second amount because a Classic deposit must follow the pool's existing two-token reserve ratio. Entering one token quantity gives the form enough information to calculate the matching quantity of the other token. If the wallet lacks that computed amount, reduce the first input until both sides fit. The smaller proportional balance, not the larger standalone balance, limits how much liquidity the wallet can add.

When should I open a new DCL position instead of adding to an existing one?

Open a new DCL position when the intended lower or upper price bound differs from the existing NFT's interval. Adding to the existing position increases liquidity inside its recorded range, while creating another position gives the same pair a separate set of bounds and its own NFT. Multiple NFTs therefore let one account maintain distinct range allocations without merging their position records.

Does a partial Rhea withdrawal change the remaining position?

A partial withdrawal reduces the position amount while leaving the rest recorded in the selected pool. Classic liquidity retains a smaller fungible LP balance, and concentrated liquidity retains its NFT with the same bounds but less liquidity. The underlying token composition continues to follow pool activity after removal. Confirm the reduced share or NFT amount on the position screen and reconcile the returned assets in the wallet.