X1.NinjaX1.Ninja

Release Notes

Changelog and version history for X1.Ninja Screener

x1.ninja is owned, operated, and maintained by TreeCityTrading LLC.

v0.32.0Sep 29, 2026
  • Feature
    Embed charts on your site

    Every pair page has an Embed button. Pick a chart or a compact price card, dark or light, and copy the snippet into any web page. Prices refresh every 30 seconds and clicking opens the pair on x1.ninja.

  • Fix
    Trade activity follows the token you are viewing

    On a flipped pair such as USDC.X/XNT, the trade activity box now shows buys and sells of the displayed token. The Money Flow page for USDC.X uses the XNT/USDC.X pool instead of a tiny side pool.

v0.31.0Sep 28, 2026
  • Improvement
    Heikin Ashi charts by default

    Pair charts open in Heikin Ashi candles. Charts you had already opened switch once; pick another style from the chart toolbar and it stays.

  • Feature
    Token pages

    Every token now has its own page with price, supply, market cap, holders, and every XDEX pool it trades in, with 24h volume and buys/sells combined across those pools. This works for tokens that mostly appear as the second half of a pair, such as USDC.X, whose holders weren't visible anywhere before. Open one by clicking a token name on a pair page.

  • Feature
    USDC.X in the token list

    USDC.X has its own row in the screener as USDC.X/USD at $1.00, with holders, supply as market cap, and liquidity and volume combined across its pools. It sorts, filters, searches and stars like any other row, and opens USDC.X/XNT priced in dollars.

  • Fix
    Stablecoins left out of top gainers

    A thin USDC.X pool trading off-peg could list USDC.X as a top gainer. Stablecoins are no longer included.

  • Fix
    Holder addresses readable on phones

    On narrow screens the holders list squeezed addresses down to a character or two. The address column now keeps its width.

v0.30.0Sep 27, 2026
  • Feature
    Name any wallet

    Click the pencil next to a wallet address to give it your own name, such as "My main" or "Team wallet". The name replaces the address wherever that wallet appears: transactions, token and LP holders, top traders, trade activity, linked wallets, the bubble map and transfer graph, Money Flow, the leaderboard, Smart Money, Degen, Shadow Feed and wallet pages. The full address and any built-in label (pool vault, locked vault) stay in the hover text. Names are visible only to you.

  • Feature
    Search by your wallet names

    Type a name in the wallet finder, the transactions maker filter, or the new filter box on the holders and top traders tabs to jump to that wallet.

  • Feature
    Names sync with your account, or export them

    Names are saved in your browser. If you turn on account sync on the Watchlist page, they also sync to your other devices along with your watchlist and alerts; synced names are stored on the x1.ninja server. Without sync, export them as a file from the wallet page and import them anywhere.

  • Improvement
    Sidebar regrouped

    The sidebar is grouped into Market, Yours (watchlist, alerts, wallet tracker), Insights and Tools. Tools folds away and remembers whether you left it open. The sidebar stays in place while the page scrolls, with status, release notes and links at the bottom.

  • Improvement
    Money Flow shows one row per token

    A token traded in several pools used to appear once per pool. Its pools are now combined, with each buyer and seller counted once.

  • Fix
    Pair page transactions fit beside the chart

    On screens narrower than about 1900px the transactions table was cut off and the Maker column scrolled out of view. It now fits; on narrower layouts the XNT price shows under the USD price.

v0.29.3Sep 19, 2026
  • Fix
    Liquidity now moves with the trade that changed it

    Trades showed up live, but USD liquidity and pooled amounts could sit unchanged for hours — even after a page refresh — while XDEX already had the new vaults. The live trade path was updating price and marking the pool fresh, so the backup writers skipped it and never rewrote LP. Swaps and LP add/remove now write reserves and liquidity from the same transaction, so a refresh matches XDEX within seconds. Thanks to the community member who reported it.

v0.29.2Sep 17, 2026
  • Fix
    Liquidity updates in real time on active pools

    Pools with steady trading showed a stale USD liquidity figure, sometimes for hours, while price and pooled amounts were live. The live vault feed now writes liquidity too, so it tracks XDEX within seconds.

  • Improvement
    Holder counts refresh within a minute on traded tokens

    Each live trade queues a background rescan of that token's holders, at most once a minute per token. Quiet tokens keep the slower rotation.

v0.29.2Sep 14, 2026
  • Fix
    Prices no longer read high by the accumulated-fee share

    XDEX pools keep accrued trading fees inside the pool vaults, but those fees are not part of the swap curve. We were computing prices from raw vault balances, so every displayed price sat above the true pool price by the share of fees accumulated since the pool opened — about 2% on XNT at the time of the fix, and slowly growing. Prices, liquidity, pooled amounts and market caps are now computed from the actual curve reserves, matching what XDEX itself shows. Thanks to the community member who reported the discrepancy.

v0.29.1Sep 13, 2026
  • Fix
    Profile submit no longer dies after the wallet prompt

    Paying or signing from a mobile wallet (Backpack or Phantom in-app) could drop the logo and banner files and show a vague network error — even after the listing fee had already been paid. Images are copied when you pick them and rebuilt after the wallet overlay, and a failed submit now tells you to re-attach them. Do not pay a second time.

  • Fix
    Linked wallets pick up new transfers

    After a token's older transfer history was finished, new transfers were missed until a ledger prune reset the scanner — quieter tokens could look unlinked on the Token Holders tab. The indexer now watches the newest signatures first so linked-wallet groups stay current.

  • Improvement
    Pair charts poll live candles less often

    Live candles on pair pages refresh every 10 seconds instead of 5. The old poll was most of the chart API traffic and could stall updates when many charts were open.

  • Improvement
    Locked vaults no longer count as top holders

    Immutable vesting or drip vaults and other AMMs' pool vaults are verified on chain and excluded from the top-10 concentration check, and labelled in the holders list. First entry: the APEX Perpetual Drip Vault. XDEX's pool authority is excluded as well.

  • Fix
    Social cards refresh again

    The homepage market card and pair cards had been frozen at build time since Sep 12 because the web process could not write its revalidation cache. They now refresh on schedule.

  • Fix
    RPC failover returns to the private validator

    A single timeout used to pin server-side chain reads to a fallback node until the next deploy. The fallback now expires after a minute and the primary is retried.

v0.29.0Sep 11, 2026
  • Feature
    TradingView Advanced Charts on pair pages

    Pair charts now run on the TradingView Advanced Charts library. That brings the full drawing toolbar (trend lines, fibs, channels, rectangles, text and more), the complete indicator library with study templates, Heikin Ashi, bars, line, area and baseline chart types, log and percent scales, and per-chart settings. Drawings and studies are saved per pool in your browser and restored when you come back. Scrolling left loads older history on demand instead of stopping at a fixed window.

  • Improvement
    USD or quote pricing and pair flip keep your drawings

    Switching between USD and quote-token pricing, or flipping the pair, changes the chart symbol instead of rebuilding the chart, so drawings stay with the view they were drawn on. Highlighted maker trades from the transaction feed are drawn as buy and sell arrows on the new chart too.

v0.28.0Sep 2, 2026
  • Fix
    Higher-timeframe candles were under-counting

    The 1h, 4h and 1D candles were rebuilt from the wrong starting point each cycle and kept a partial bucket over the complete one — 1h charts showed about 19% fewer trades than actually happened, 1D about half. The window is now aligned to the bucket boundary and every pool's candles have been rebuilt from the full trade history. Candle trade counts now match the trade list exactly on every timeframe.

  • Fix
    USD prices for token-to-token pairs

    Live trades on pairs not quoted in XNT or USDC.X were being stored without a USD price, so their volume was missing from stats, Money Flow and the Leaderboard. The live listener now prices them through the quote token's own XNT or USDC.X pool, and 116,850 historical trades were repriced the same way.

  • Improvement
    API plans now change what you get

    Your per-minute rate limit follows your current plan the moment it changes, instead of being fixed when the key was created. Monthly quotas are enforced: a spent quota returns 429 with X-Quota-Limit, X-Quota-Used and X-Quota-Period headers rather than an unexplained failure. Requests that are rate-limited or outside your plan no longer count against your quota, and each request is counted once. Prepaid on-chain subscriptions now end when their period ends.

  • Fix
    Safety scores load reliably

    The safety panel on pair pages could take 10 to 20 seconds and sometimes time out on a cold load. The LP-burn check now uses indexed lookups instead of scanning every token account, and every on-chain call has a timeout. Cold loads take about 3 seconds.

  • Fix
    Prices refresh on time again

    The batch price refresh had been overrunning its budget for several days, so the last-priced timestamp on the status page went stale. It now fetches vault balances in bulk, skips pools priced moments ago by the live feed, and rechecks dormant pools every six hours. A full pass takes under a minute; the status page alerts if it goes stale.

  • Improvement
    Token profile submissions require the paying wallet

    When submitting a new token profile you now sign a short message with the wallet that paid the fee, and the payment is checked against that wallet. This stops anyone else from claiming your payment for their own submission.

  • Improvement
    Image proxy hardened

    The same-origin image proxy for IPFS-hosted token logos now only serves images referenced by a known token, caps image size, and is rate limited.

v0.27.1Aug 22, 2026
  • Improvement
    Rug Radar severity

    Every event now shows what share of the pool's liquidity was removed, color-coded by severity — the more of the pool that left, the hotter the badge. Flash events use the exact before/after measurement; parsed removals show an approximate share (marked with ~).

v0.27.0Aug 22, 2026
  • Feature
    Linked-wallet detection

    The Token Holders tab now shows when top holders are connected: wallets linked by repeated direct transfers are grouped, and the page reports how many of the top 20 holders belong to linked groups and what share of supply the largest group controls. Distribution hubs are excluded so airdrops don't read as ownership.

v0.26.0Aug 22, 2026
  • Feature
    Custom Alerts

    Set alerts on any token and get pinged by Telegram DM: price crossing a level, liquidity pulled, a Smart Money wallet buying past a threshold, or a Degen token graduating. Connect once via the bot, add alerts from the new Alerts page, and they fire within about 30 seconds of the event.

v0.25.2Aug 22, 2026
  • Feature
    Graduation ETA

    The Degen page now estimates each curve token's time to graduation from its recent filling pace — sortable, with tokens on track to graduate within six hours highlighted. Fast movers surface before they graduate, not after.

v0.25.1Aug 22, 2026
  • Feature
    Creator report cards

    Every Degen curve token now shows its creator's track record — how many tokens they've launched and how many graduated — with a full report card per creator: all their launches, graduation outcomes, detected liquidity pulls on their tokens, and how much they've sold of their own graduated tokens. Serial launchers with nothing graduated are flagged in red.

v0.25.0Aug 22, 2026
  • Feature
    Holder P&L

    Every pair page gains a Holder P&L tab: what share of current holders are in profit, what share of the tracked supply is, the median entry price, and a full entry-price distribution against the current price — so you can see at a glance where the market bought and who is underwater. Computed from the complete DEX trade history using average cost.

v0.24.1Aug 22, 2026
  • Feature
    Money Rotation

    See where money moves between tokens. Rotation matches each wallet's sells against its buys to show which tokens capital is leaving, where it goes next, and how much is fresh money entering or cashing out — as a flow diagram and a sortable table, over 24-hour, 7-day, or 30-day windows.

v0.24.0Aug 22, 2026
  • Feature
    Rug Radar

    Real-time liquidity monitoring. x1.ninja watches every pool's vaults directly and detects liquidity pulls within seconds of them happening — a sudden drain of both sides of a pool that no ordinary trade can produce. The Rug Radar page shows every detected pull and large LP removal from the past week with severity, amounts, and links to the pool and transaction.

v0.23.0Aug 22, 2026
  • Feature
    Smart Money

    A new page ranking wallets by realized trading profit, scored hourly from the complete trade history using the same average-cost method as the wallet tracker. Sort by 30-day or all-time P&L, win rate, volume, or activity; filter by minimum trades, volume, and recency. Consistently profitable, recently active wallets earn a SMART badge that follows them across the site, and Money Flow can be filtered to show only what those wallets are buying.

v0.22.0Aug 22, 2026
  • Feature
    Degen Launchpad

    A new page tracking tokens launching on the Degen bonding curve — read directly from the chain. See every token still on the curve with its live progress toward graduation and XNT raised, plus all the tokens that graduated to XDEX with their current price, liquidity, and market cap.

v0.21.3Aug 20, 2026
  • Fix
    Token logos are back

    Logos hosted on the public IPFS gateway (XNT, pXNT, DGN, and others) stopped displaying when the gateway began blocking embeds on other sites. Logos now serve directly from x1.ninja, cached, so a third-party policy change can't break them again.

  • Improvement
    A better phone experience

    The pair page loses a decorative banner and a row of toolbar chrome, so the chart starts higher and more of it fits on screen. The transaction list shows the columns that matter on a narrow screen instead of forcing a long sideways scroll. Money Flow becomes a clean card list on phones — token, buy/sell split, and net flow at a glance.

v0.21.2Aug 19, 2026
  • Improvement
    Money Flow, redesigned

    The board now opens with headline stats (total buy/sell volume, net flow, biggest inflow and outflow), shows each token's flow as a diverging in/out bar, adds a price trend sparkline per row, and every column sorts on click. Token pages gained a cumulative net-flow line tracing the window's story across the buy/sell pressure chart.

  • Fix
    Non-XNT pairs filter works again

    The Non-XNT toggle had quietly stopped revealing anything when the homepage moved to a faster top-50 view. Switching it on now loads the full pair list on demand.

  • Fix
    Pair page polish

    Fixed a double scrollbar on the transaction list that could let the header drift out of alignment with the rows, and merged two overlapping buy/sell activity displays in the sidebar into one richer panel with trade counts and buyer/seller totals.

  • Improvement
    Site-wide check-up

    Every page was put through an interaction-level audit — sorting, filtering, toggles, live feeds, and layout at desktop and mobile widths — and everything found was fixed in this release.

v0.21.1Aug 19, 2026
  • Improvement
    Drawing tools rail

    Drawing tools moved out of a dropdown into a vertical toolbar docked on the chart's left edge — every tool one click away, with delete and clear-all at the bottom. Phones keep the compact menu.

  • Feature
    Trade Activity on every pair page

    The pair sidebar now shows windowed trade activity (1h/24h/7d): buy pressure, volume split, and the top net buyer and seller for the window, with a link to the full money flow view.

  • Feature
    Contract safety badges

    Pair pages now show on-chain contract facts as badges: whether the mint authority is revoked or still active, whether accounts can be frozen, and how much of the pool's LP supply has been burned. Read live from the chain, not from third-party lists.

  • Feature
    Holds column in the transaction list

    Each trade row now shows the maker's current balance of the token, so you can see at a glance whether a seller has exited or is still holding.

  • Improvement
    Track any wallet from any trade

    Every maker in the transaction list now links to its Wallet Tracker page — holdings, value, and P&L — alongside the existing explorer link.

  • Improvement
    Hide $0 volume pairs

    A one-click filter chip on the main screener hides pairs with no 24h volume.

v0.21.0Aug 19, 2026
  • Feature
    Money Flow

    A new tool that tracks where money is moving on X1. The board ranks every token by net buy/sell volume over 1h, 24h, or 7d; click through for per-token buy/sell pressure over time, top buyers and sellers, and recent large wallet-to-wallet transfers — with known wallets like pool vaults labeled by name. Every pair page links to its token's money flow view.

v0.20.1Aug 15, 2026
  • Fix
    Transaction list ordering

    Live and historical trades could interleave out of order in the transaction list (e.g. 3h, 4h, 2h ago). The list is now always sorted newest-first by chain time, then slot for fills in the same second. Live SSE copies no longer override the stored timestamp for a trade they share a signature with.

  • Fix
    Chart menus stay on screen

    On phones, some chart toolbar menus (like Drawing Tools) could open partially off the edge of the screen. Menus now reposition themselves to stay fully visible on any screen size.

  • Improvement
    Age or exact timestamps — your pick

    The transaction list's date column now toggles between time elapsed ("3h ago") and the exact date and time. Click the column header or any timestamp to switch; your choice is remembered.

  • Fix
    Capy-Mon follows the live Foundation program

    Capy-Mon now reads the official min self-stake from Foundation /v1/config (currently 5,000 XNT — not the old 3,000 snapshot, and not empirical p85). Eligibility uses failingCriteria from the delegation API. The staking validator picker was filtering for status "Active" (which the API never returns), so the qualifying list was empty; it now shows validators with no failing criteria. Stale "dry-run / launches next epoch / NEW" copy is gone, with a link to the official dashboard.

  • Improvement
    Faster site under the hood

    A series of backend optimizations cut candle-processing overhead by over 99%, freeing up server capacity for a snappier site overall.

v0.20.0Aug 9, 2026
  • Feature
    MACD and Stochastic RSI

    Two new indicators join the chart: MACD (12, 26, 9) with histogram and signal line, and Stochastic RSI (14, 3, 3) with 80/20 bands. Both render as panes below the chart and toggle from the Indicators menu. More indicators are on the way.

  • Fix
    Complete transaction histories

    Fixed an issue where a few trades during very active periods could be missing from a pair's transaction list. Affected records have been restored, and histories now verify and heal themselves automatically.

  • Fix
    Fixed a rare price display glitch

    A brief glitch could momentarily show an incorrect price and print a stray candle wick that later vanished. Live prices now pass additional sanity checks before display. Stored chart history was never affected.

  • Improvement
    Find any trade, with exact timestamps

    The transaction list now shows the full date and time when you hover a row's age, and a "Load older trades" button extends the list up to the 1,000 most recent trades — previously it stopped at ~100 with no way to look further back.

  • Improvement
    Clearer chart pricing

    The chart can be priced in USD or in the pair's quote token, and the two can legitimately differ. The mode badge is now equally prominent in both states, its tooltip explains the difference, and the token stats label the USD figure explicitly.

  • Improvement
    A tidier chart toolbar

    Chart controls are reorganized into consistent groups: timeframes, view (chart type + log scale), tools (draw, indicators, alerts), and display (currency, flip, timezone). Same controls, one visual style, in an order that matches how they're used.

  • Improvement
    Fresher candles

    Charts pick up new trades noticeably faster during busy periods, and candle accuracy was verified against the raw trade record as part of the change.

v0.19.2Aug 1, 2026
  • Improvement
    A much lighter homepage

    The homepage now loads a focused top-50 window instead of the full pool list, cutting the initial payload from over 3MB to ~360KB — a dramatically faster first load, especially on mobile. Search still covers every listed pair (server-side), and the charts and watchlist keep their wider data paths.

  • Improvement
    Smarter data caching

    Your browser now revalidates unchanged market data instead of re-downloading it, and a caching bug that could briefly serve mismatched data is fixed.

  • Improvement
    Chart and mobile polish

    RSI gained proper 70/30 guide lines, very small prices render with subscript notation on the chart axis, the top-gainers ticker fades cleanly at its edges, a duplicated banner on mobile pair pages was removed, and several low-contrast text elements were fixed.

  • Improvement
    Sturdier releases

    Behind the scenes, site updates now pass additional automated checks before going live.

v0.19.1Jul 27, 2026
  • Fix
    Token names now follow on-chain renames

    Token names and symbols are cached for speed, which meant a project that renamed its token on-chain could keep showing its old name here for up to a week. ANL now reads as "ANL Protocol", matching its current on-chain metadata. We also added a check that compares the most-traded tokens against their on-chain metadata, so a rename gets picked up quickly instead of waiting on the cache.

v0.19.0Jul 18, 2026
  • Feature
    A main menu with more personality

    The sidebar is now color-coded by section so it's easier to find things at a glance, and the XNT price at the top gained a 24h change chip and a mini price chart that update live. Capy-Mon also gets a NEW badge while it's fresh.

  • Feature
    A calmer mobile pair list

    On phones, the pair list is now one clean line per token — logo, name, price, and 24h change, with sortable column headers (tap PRICE or 24H to re-order). The busy stacked stats are gone; everything is still one tap away on the pair page.

  • Improvement
    Pair links worth sharing

    Sharing a pair link on Telegram, Discord, or X now unfurls into a proper card: the token's price and 24h change, a 24h price chart, and the token's logo if it's a verified project. Links shared before today will pick up the new look as caches refresh.

  • Fix
    More accurate volume and trade history

    Fixed a timing edge case where trades landing in the same second could be skipped, and cleaned up historical duplicate rows. Volume, trade counts, and P&L figures are now computed from a fully deduplicated record.

  • Improvement
    Faster stats, sturdier pipes

    A behind-the-scenes tune-up: pool stats now refresh in a fraction of the time, the live data feeds recover on their own if something hiccups, and public APIs got fair-use limits so one scraper can't slow the site down for everyone else.

v0.18.0Jul 11, 2026
  • Feature
    Watchlist and price alerts sync across devices

    Sign one message with your wallet on the watchlist page and your saved pairs and price alerts follow you to any browser or device — sign in with the same wallet elsewhere and everything merges. An alert that fires on one device won't fire again on your others. Nothing changes if you don't opt in: watchlist and alerts keep working locally as before, and disabling sync keeps both your local and cloud copies.

v0.17.4Jul 11, 2026
  • Feature
    See yourself on the leaderboard

    With a wallet connected, the trader leaderboard highlights your own row and shows your rank for the selected window — or tells you plainly when you're not in the top 50.

  • Fix
    No more paper gains from empty pools

    Unrealized P&L is now only valued at prices from pools with at least $100 of liquidity. A token whose only market is a near-empty pool previously could show enormous paper gains at a price nobody could actually sell into; those now count as having no usable price, the same as an unpriced token. Applies everywhere P&L is shown: holders, top traders, your position, and wallet portfolios. Realized P&L is unaffected — it always came from actual sale proceeds.

  • Improvement
    Token profile submission hardening

    The paid profile-submission flow got a reliability pass: if payment verification is briefly unreachable at submit time you now get a clear "try again in a minute" response instead of an ambiguous failure, submitted descriptions are sanitized more strictly, and review-queue handling was reworked so a submission can no longer get stuck out of sight after a failed approval step.

  • Improvement
    Terminal keeps up with new tokens

    The trade terminal now refreshes its symbol registry when it sees a trade on a pool it doesn't recognize, so brand-new tokens show their ticker within seconds instead of ??? until the next page load. The whale-alert threshold is also selectable now ($25 / $100 / $250 / $1K) and remembered between visits.

v0.17.3Jul 11, 2026
  • Feature
    Your position on the pair page

    With a wallet connected, every pair page now shows your own position on the token above the tabs: tokens held, average entry, total invested, and realized, unrealized, and total P&L with ROI — the same average-cost math as the Top Traders leaderboard, computed from your XDEX trade history. Tokens received by transfer or airdrop have no cost basis and aren't counted, and the strip stays hidden when your wallet has no tracked buys.

  • Feature
    Portfolio P&L on wallet pages

    Wallet pages have a new P&L tab that runs the same average-cost math across every token the wallet has traded: per-token invested, realized, unrealized, and total P&L with ROI, plus portfolio totals and how many positions are in profit. Tokens without tracked buys are excluded rather than given a fabricated cost basis.

v0.17.2Jul 11, 2026
  • Fix
    Watchlist prices auto-refresh

    The watchlist previously loaded pool data once and never updated it, so returning visitors could see stale prices. It now refreshes every 30 seconds in the background, without flickering the table.

  • Improvement
    Verified token cards link to the pair page

    Cards on the Verified Tokens page now open the token's most liquid pair directly instead of a screener search, and the page has a Submit-your-token button.

  • Fix
    Removed the settings page

    The settings page was never wired up — its controls didn't do anything — so it's gone until there are real settings to put on it.

v0.17.1Jul 10, 2026
  • Improvement
    Mobile screener rows without horizontal scrolling

    The mobile screener now presents each pool as a compact two-line row with price, 24h change, volume, liquidity, and safety visible at once. Token symbols stay readable down to 320px, while the full desktop table and saved column preferences continue to work as before.

v0.17.0Jul 3, 2026
  • Feature
    Top Traders tab

    Every pair now has a Top Traders tab that ranks wallets by the total profit they've made on the token — realized gains locked in from sells (average-cost basis) plus unrealized gains on whatever they still hold, priced at the current price. It surfaces the wallet that bought the bottom and sold the top, which the holders view (current bags only) can't show. Realized, unrealized, and total are broken out per wallet with ROI %, and each address carries the same hover card and links as the rest of the site. Wallets with no tracked buys are excluded so there's no fabricated cost basis.

v0.16.1Jul 3, 2026
  • Feature
    Profit/loss for every token holder

    The Token Holders tab now shows each wallet's unrealized profit or loss at the current price. Cost basis is reconstructed from the wallet's XDEX buy history (average cost) across every pool for that token, so the figure reflects what they actually paid. Wallets whose current balance can't be explained by tracked buys — LP, team, airdrop, or transferred-in bags — show a dash instead of a fabricated number, so a mint-funded wallet never reads as an infinite gain.

  • Improvement
    Holder profit/loss summary

    A one-line summary above the holders table shows how many of the priced holders are in profit and the net unrealized P&L across them — an instant read on whether the token's tracked buyers are collectively up or underwater. Holders with no cost basis (the dashed rows) are excluded from the count.

v0.16.0Jul 2, 2026
  • Feature
    Wallet hover cards on maker addresses

    Hovering a wallet in the Maker column of the trade feed — or on the leaderboard — now pops a compact card with that wallet's total and 24h volume, trade counts, buy/sell split, pairs traded, and its most recently traded tokens, each linking through to the pair. Click the address for the full wallet page. Hover-only by design; on touch devices tapping the maker still filters the feed as before.

v0.15.0Jun 23, 2026
  • Fix
    Maker filter now matches the chart and works on mobile

    Filtering the transaction feed by a wallet was leaking other wallets' liquidity add/remove events into the results, and the list showed only the few matching trades that happened to be in the recent feed while the chart showed the wallet's full history. The list now pulls the wallet's complete recent history server-side so it lines up with the chart markers. The Maker column is also visible on mobile now (it was hidden below the tablet breakpoint), and the table columns stay aligned when scrolling sideways.

  • Fix
    Fresh trades no longer show a negative "time ago"

    When a block timestamp ran a few seconds ahead of your device clock, a brand-new trade could render as "-10s ago". Elapsed time is now clamped to zero.

  • Fix
    More accurate live sidebar stats on quiet pools

    The live trade stream backfills recent history on connect, which on low-activity pools could reach back days and get double-counted into the 24h buy/sell/volume figures. Only trades newer than the last server snapshot are now overlaid.

v0.14.3Jun 19, 2026
  • Improvement
    Drag to adjust on-chart price alerts

    Grab an alert line on the chart and drag it to a new price to update that alert in place — no duplicate created. The above/below direction is recomputed from the current price on drop.

v0.14.2Jun 18, 2026
  • Feature
    On-chart price alerts

    Set a price alert by toggling the Alert tool on the chart and clicking at a price — it drops a dashed line (green above / red below the current price) and fires a browser notification and in-app toast when crossed. Alerts created from the bell menu now also appear as lines on the chart. USD-price mode only.

  • Improvement
    Capybara delegation minimum updated to 3,000 XNT

    The X1 Foundation replaced the previous 1,000 XNT floor plus dynamic top-85% self-stake cutoff with a flat 3,000 XNT minimum. The validator monitor now qualifies validators against that flat floor, with an on-bubble band just above it.

  • Fix
    Pool count shows the true total again

    The tracked-pool count in the sidebar, ops, and status displays was showing only pools updated in the current sync cycle (~985) instead of all tracked pools (~1,035, matching on-chain XDEX). It now reports the true total.

  • Fix
    Volume and transaction stats refresh reliably

    As the trade database grew past ~800k rows, the per-cycle stats refresh started timing out and the header and sidebar counters could go stale. The refresh was rewritten to two aggregate queries over the 24h window and now completes in under a second.

v0.14.1Jun 13, 2026
  • Improvement
    LP Tool reframed for new and exotic pools

    The LP tool now leads with its purpose — pricing pairs where you don't already know the rate — prefers a direct pool when one exists, shows agreement between routing paths so you can gauge confidence, and has a sortable pools table. Fixed token icons and a quote-side price that was off by a squared factor.

  • Improvement
    Profile submission overhaul

    Submitting or updating a token profile now has an in-app payment step, a token picker, drag-and-drop logo upload, and inline validation, with clearer copy throughout. Switching to Update with a token already selected now runs the ownership check automatically.

  • Improvement
    Verified tokens card gallery

    The verified tokens page is now a card gallery, and broken accent styling was fixed.

  • Improvement
    Realistic vanity address estimates

    The vanity generator's time estimate now uses measured throughput instead of an optimistic fixed rate, warns when a chosen prefix starts with a rare leading character (which is far slower to find), and defaults the thread count to your machine's core count.

  • Fix
    Account Closer no longer times out on large wallets

    Scanning a wallet fired one RPC call per token plus an off-chain metadata fetch each, which timed out on wallets with many accounts. Mint and metadata reads are now batched; a 105-account wallet that previously timed out now loads in about 300ms.

v0.14.0Jun 12, 2026
  • Improvement
    Multi-chart page controls and layouts

    The charts page gained global timeframe and price-type controls, a 1×1 layout option, share and clear actions, auto-fill of recent pairs, on-screen instructions, and proper stacking on mobile.

  • Improvement
    Shadow Feed velocity visuals

    The live trade terminal now conveys trade tempo at a glance — a velocity meter, pulse, and sparks that scale with activity — and the row columns now align correctly.

  • Improvement
    Sortable leaderboard with average trade size

    The trader leaderboard columns are now sortable and include an average trade size column.

  • Improvement
    Wallet tracker visual refresh

    The wallet page palette now matches the rest of the site, and the whole section shares one wallet connection so connecting once loads your portfolio automatically.

  • Improvement
    Bubble Map always shows holders

    The X-Ray view now always shows holder bubbles plus any wallet-to-wallet connections, instead of going blank for tokens with only swap activity.

  • Fix
    More accurate real-time prices and volume

    Fixed a real-time pricing divergence, corrected liquidity-event volume, and de-duplicated wallet stats so live figures line up with the reconciled totals.

  • Fix
    Status page stops flagging quiet markets as degraded

    The public status page no longer reports "degraded" simply because trading is quiet — low activity is no longer mistaken for an ingestion problem.

v0.13.3Jun 11, 2026
  • Feature
    Chart indicators and TradingView-style shortcuts

    Added EMA, VWAP, and Bollinger Band overlays, vertical and crosshair line tools, and keyboard shortcuts modeled on TradingView.

  • Fix
    Charts include late-arriving trades

    The candle aggregator now picks up trades that were backfilled after its progress marker had already advanced, so candles no longer miss late history.

  • Fix
    Safety scores no longer flicker each sync

    Pool sync was briefly clearing safety scores and 1h stats at the start of every cycle before recomputing them; it now preserves them, so they no longer disappear and reappear.

v0.13.2Jun 10, 2026
  • Fix
    Restored swaps after an XDEX API change

    XDEX changed how native XNT is addressed in their swap-preparation API, which broke swap building on our side. Updated to match so swaps work again.

  • Improvement
    OHLCV API accepts a timeframe alias

    The public v1 OHLCV endpoint now accepts "timeframe" as an alias for the interval parameter and rejects invalid values with a clear 400 error.

v0.13.1Jun 9, 2026
  • Feature
    Trader leaderboard

    Top wallets by traded volume over the last hour, day, or week at /leaderboard — with trade counts, buy/sell split, and pairs traded. Each wallet links to the wallet tracker.

  • Feature
    Safety scores in the screener table

    The Safety column is now on by default, showing each pool's 0-100 score (mint/freeze authority, holder concentration, liquidity depth, pool age, LP burn). Scores fill in progressively as pools are checked; the full factor breakdown stays on the pair page.

  • Improvement
    Real-time volume and transaction stats

    Volume and transaction counters now update the moment a trade lands instead of waiting for the next sync cycle. Exact values are still reconciled in the background.

  • Improvement
    Buy impact preview in the swap panel

    The swap panel now shows estimated price impact at $100 / $1k / $10k buy sizes from current pool reserves, so liquidity constraints are visible before entering an amount.

v0.13.0Jun 9, 2026
  • Feature
    Real-time new pool detection

    New XDEX pools now appear on the screener within seconds of their first transaction instead of waiting for the next sync cycle (previously up to ~20 minutes). The first trade on a brand-new pool is captured too.

  • Feature
    Price alerts

    Set price targets from the bell on any pair page. While a tab is open, alerts are checked every 30 seconds and fire a browser notification plus an in-app toast when crossed. Stored locally in your browser.

  • Feature
    Trending preset

    New built-in preset that ranks pairs by transaction activity over the last hour — see what's moving right now rather than over 24 hours.

  • Improvement
    Live price flash on the screener

    Price cells flash green or red when a price changes, so movement is visible at a glance.

  • Improvement
    Paste any address into search

    Search now resolves every pool address and token mint on paste, including quote-side mints.

  • Fix
    More accurate volume and transaction stats

    Stats aggregation now fully deduplicates trades during ingestion retry windows, eliminating brief over-counts of volume and transaction totals.

  • Fix
    Trade ingestion durability

    If the analytics database is down for an extended period, buffered trades now spill to a durable queue and are written once it recovers — previously a long enough outage could drop them.

  • Improvement
    Less redundant polling on pair pages

    While the live trade stream is connected, the page no longer also polls for the same trades in the background.

  • Improvement
    UI polish pass

    Visible focus rings on inputs, consistent button sizing, hover states on sortable table headers, and small contrast improvements.

v0.12.1Jun 4, 2026
  • Improvement
    Production reliability maintenance

    Completed a scheduled infrastructure maintenance window and verified the web app, real-time data pipeline, analytics, monitoring, and validator connectivity after restart.

  • Improvement
    Pinned database and analytics container versions

    ClickHouse and Umami now run from explicit release tags instead of moving latest-style tags. This makes rebuilds, restores, and rollbacks more predictable.

  • Improvement
    Documented container upgrade process

    Added a repeatable upgrade and rollback checklist for stateful infrastructure services, including preflight backup checks and post-upgrade health verification.

  • Fix
    Cleaner deploy workspace tracking

    Deployment-generated Next.js directories and live symlinks are now ignored by git, reducing noise during release preparation.

v0.12.0May 3, 2026
  • Feature
    Vanity Address Generator

    New tool at /vanity to generate custom X1 wallet addresses by prefix, suffix, or contains-pattern. Runs entirely in your browser via Web Workers — keys never leave your device. Multi-threaded with live progress, difficulty estimate, and one-click keypair download.

  • Feature
    Account Closer

    New tool at /account-closer for cleaning up token accounts. Close empty accounts to reclaim rent, or burn unwanted tokens and NFTs in batch. Handles both Token and Token-2022 programs with prominent warnings on irreversible actions.

  • Feature
    Token Allowance Manager

    New security tool at /token-allowance to scan your wallet for active SPL token delegations and revoke any you no longer need. One-click revoke per delegation, or batch-revoke everything in a single transaction.

  • Feature
    Transaction Decoder

    New tool at /transaction-decoder — paste any X1 transaction signature and get a human-readable breakdown of every instruction, balance change, and program log. Useful for debugging swaps, transfers, and arbitrary on-chain interactions.

  • Feature
    Maker filter on transaction feed

    Pair pages now have a wallet filter on the Maker column — paste any base58 address to see only that wallet's trades on the current pair. Great for tracking specific traders without leaving the page.

  • Improvement
    Capybara dashboard refresh

    Validator monitor at /capy-mon now sorts by qualifying status by default and supports starring favorite validators (★) with a Favorites-only filter. Stars persist across sessions.

  • Improvement
    Pool sync resilience

    Pool sync now caches token metadata persistently and skips pools that the real-time pipeline already updated within the last 15 minutes. The full sync cycle now finishes well within budget even when public RPCs are flaky.

  • Improvement
    Quieter background logs

    Reduced trade-indexer log volume by collapsing per-cycle no-op messages while keeping signal (errors and successful indexing) visible. Easier to spot real issues at a glance.

  • Fix
    Real-time pipeline noise reduction

    The WSS listener no longer floods the log with transient ECONNRESET messages — it batches and summarizes them. Heartbeat timestamp now reflects actual signature arrivals rather than the last successful tick, so monitoring tools accurately detect ingestion stalls.

  • Improvement
    Default chart type set to Heikin Ashi

    New visitors now see Heikin Ashi candles by default, which smooths out noise and makes trend direction easier to read. Existing chart preferences are preserved.

  • Fix
    LP burn detection via archival RPC

    Safety scoring scans LP holder accounts via an archival RPC, so pools with longer histories now correctly detect partial and full LP burns instead of silently scoring zero.

v0.11.1Apr 20, 2026
  • Improvement
    Zero-downtime deploys

    Deploys no longer drop in-flight requests. The web server now runs under PM2 cluster mode, so new code swaps in via a graceful handoff instead of a hard restart. Real-time trade streams and pending API requests survive the swap cleanly.

  • Improvement
    Rate-limit headers on every public API response

    API responses now include X-RateLimit-Limit, X-RateLimit-Window, and X-API-Service headers so developers building on our API can see their quota without having to trigger a 429 first. Zero impact on latency — served from a static config table at the edge.

  • Improvement
    Validator tunnel health monitoring

    Added automated checks for the SSH tunnel that powers real-time price updates. The 5-minute health cron now verifies the systemd service, all three forwarded ports, and does a live RPC probe. If the tunnel ever silently degrades, we hear about it on Telegram within minutes instead of noticing hours later through indirect symptoms.

  • Improvement
    Database write-ahead logging enabled

    Switched SQLite (the small app-metadata DB that holds token profiles, transfer graphs, developer accounts) to WAL mode. Concurrent readers no longer block writes, and cache size was raised from 2 MB to 50 MB. Invisible to users but noticeably snappier on admin paths.

v0.10.3Apr 20, 2026
  • Fix
    Liquidity add/remove events now appear in trade history

    LP add/remove events were silently missing from the default "All Trades" feed on pair pages due to a schema mismatch in the backend query — the call ran ~10 times per minute since launch, always failing quietly and returning empty. LP events now show alongside swaps, correctly labeled and timestamped.

  • Improvement
    Listing payments now verified on-chain

    Paid listing approvals now confirm the payment transaction on-chain — verifying the signature exists, wasn't reverted, was sent to the correct fee wallet, and met the tier's required amount. Also guards against a single transaction being used to pay for multiple listings.

  • Improvement
    Hardened TLS certificate auto-renewal

    Reconfigured the renewal pipeline so future certificate refreshes happen cleanly with no manual intervention.

  • Improvement
    Tightened firewall rules against a persistent scraper bot

    An axios-based bot hitting a non-existent API endpoint ~8k times a day was being rejected by nginx but still consuming a TLS handshake per request. Blocklist rules are now ordered so the bot is dropped at the kernel level before any TLS work happens.

  • Improvement
    Client-side error reporting for faster bug response

    Uncaught JavaScript errors and unhandled promise rejections in the browser are now reported to our own server-side log (no third-party service, no bundled tracker, nothing that slows page load). Problems that would previously only show up if a user reported them now surface automatically within seconds. Capped per-session to prevent noise, rate-limited per IP.

v0.10.2Apr 18, 2026
  • Fix
    Restored real token names across hundreds of pools

    Many pools were showing truncated mint addresses in place of their actual token names (e.g. "DohWBfvX..." instead of "MIND Token"). Metadata lookups now try multiple RPC endpoints with automatic failover, and a nightly backfill picks up any tokens that missed their initial sync. 84% of tracked tokens now display full names; the rest have no on-chain metadata published.

  • Fix
    Captured aggregator-routed swaps that were being missed

    Trades routed through two pools in a single transaction (multi-hop swaps) were only being recorded against one of the pools. Our cross-check against on-chain data showed this affected roughly 13% of swaps on high-volume pairs. All pools touched by a transaction are now indexed, and 24h volume/transaction counts reflect the full picture.

  • Fix
    Safety scores now load reliably on popular pools

    The safety score on heavily-traded pools was timing out due to the depth of LP holder history that had to be scanned on each request. Added a wall-clock budget to the scan and a short negative-cache on failures to prevent retry storms. Cold-miss response dropped from 30s+ (timeout) to under 5 seconds; cached responses return in ~20ms.

  • Fix
    Holder concentration no longer counts DEX vaults as whales

    The "Top 10 holders own N% of supply" figure in safety scores was incorrectly including each pool's own liquidity vaults as top holders, inflating concentration to near 100% on many pools. Safety now excludes DEX pool vaults across every pool holding the same token, so the concentration figure reflects actual wallet holdings.

  • Improvement
    Clearer swap error messages

    Swap attempts that fail on the DEX side (insufficient balance, invalid slippage, etc.) used to show a generic "Swap preparation failed" message regardless of cause. The specific reason is now passed through, so you see the actual problem immediately.

  • Improvement
    RPC resilience across the stack

    Pool sync, price polling, trade indexing, wallet lookups, holder queries, and safety scans now fail over automatically across multiple RPC endpoints with health-based routing and small retry backoff. A single slow or failing RPC no longer causes silent data gaps or stalled requests.

  • Improvement
    Per-IP limit on live trade stream

    The real-time SSE trade feed now caps concurrent connections per IP (default 10). Protects site responsiveness from misbehaving clients without affecting normal multi-tab or multi-pair usage.

v0.10.1Apr 12, 2026
  • Feature
    Wallet Tracker

    New tool at /wallet — paste any address or connect your wallet to view token holdings with live USD values, 24h price changes, and a dust filter. Wallet connect auto-redirects to your portfolio.

  • Feature
    Wallet Trade History

    Full trade history for any wallet pulled from our indexed database of 423K+ trades. See every swap across all XDEX pools with pair names, prices, and buy/sell breakdowns.

  • Feature
    Wallet Metrics

    Third tab on the wallet page showing trading activity by pool, co-traders (wallets that trade the same pools ranked by overlap), and direct transfer peers. All queries return in under 1 second.

  • Improvement
    Holder cache optimization

    Holder list cache increased from 60s to 5 minutes. The underlying getProgramAccounts RPC call takes 3-8 seconds — now only the first visitor per token pays that cost.

  • Improvement
    Hardened info exposure

    Removed internal paths from robots.txt, stripped technology fingerprinting headers, and slimmed down public API responses to avoid leaking infrastructure details.

  • Improvement
    Standardized RPC endpoints

    All 8 backend scripts now use a consistent set of benchmarked RPC nodes with the fastest endpoints prioritized. Removed unreliable public RPC from fallback rotation.

  • Fix
    Fixed missing token logos

    Approved profile images for FOREST, PV, and 5 other tokens were stored with a stale CDN domain. Corrected all URLs and flushed cached API responses.

v0.10.0Apr 11, 2026
  • Feature
    LP pool labels on holder lists

    Holder lists now label known addresses — XDEX pool authority, DEX vaults, and burn addresses are tagged with colored badges so you can instantly see how much supply is locked in liquidity pools vs held by wallets.

  • Fix
    Fixed chart volume bleeding into price axis

    The volume histogram scale was rendering labels on the price axis, causing stray numbers (like "82.87") to appear on the chart. Volume scale is now hidden — bars still display but won't interfere with price labels.

v0.9.9Apr 1, 2026
  • Feature
    Shadow Feed — live trade terminal

    New real-time trade feed at /terminal showing every XDEX swap as it happens. Features a cypherpunk-styled interface with buy/sell color coding, whale alerts (>$25), top trading pairs, active wallet rankings, and live buy/sell volume ratio — all derived from the Geyser stream with zero additional RPC load.

  • Improvement
    Upgraded to dedicated RPC infrastructure

    All backend scripts and the web server now use a private RPC node as the primary endpoint, eliminating rate-limit failures that were causing empty holder data and stale prices during high-traffic periods.

  • Fix
    Fixed bubble maps and holder data

    Holder queries were returning empty for every token because the web server was hitting the rate-limited public RPC. Switching to the private validator RPC restored holder data, bubble maps, and safety scores across all 830+ pools.

  • Feature
    Global SSE trade stream

    The /api/stream/trades endpoint now supports a global feed (pool=all) that streams every trade across all pools. Powers the Shadow Feed with no per-pool subscription needed.

v0.9.8Mar 31, 2026
  • Fix
    Fixed real-time price updates for 527 pools

    The Geyser consumer assumed on-chain vault ordering (token0Vault/token1Vault) matched base/quote token assignment, but XDEX doesn't guarantee this. 527 of 830 pools had swapped vault ordering, causing the Geyser pipeline to write inverted reserves and wildly wrong prices (e.g. a $0.00004 token shown as $3,531). The sync now stores explicit baseVault/quoteVault mappings, and the Geyser consumer uses role-based mapping instead of index-based.

  • Fix
    Fixed pool reserve data accuracy in batch sync

    The batch sync had the same vault ordering assumption — it assigned vault balances by index rather than by actual token mint. Reserves are now mapped by verifying each vault's on-chain mint. All 830 pool prices, liquidity, and LP data verified against on-chain within 0.03%.

  • Improvement
    Batch vault optimization — 20x faster sync

    Pool sync now pre-fetches all vault balances in batches of 100 (17 RPC calls for 830 pools) instead of 830 individual calls. Combined with holder count caching, sync dropped from 20+ minutes (timing out) to ~8 minutes on warm runs.

  • Fix
    Fixed candle aggregator skipping new pools

    Pools indexed after their first trades permanently had empty charts because the candle aggregator applied a 48-hour lookback window. New pools with no prior watermark now aggregate all historical swaps on their first run, so charts appear immediately.

  • Fix
    Profile logos now override on-chain metadata

    User-submitted profile images were being ignored because the API used them as a fallback only. Now the uploaded profile logo takes priority over the default IPFS mint logo.

  • Improvement
    Column headers clarified

    Screener table headers now show "Txns 24H" and "Vol 24H" instead of ambiguous "Txns" and "Vol".

v0.9.7Mar 29, 2026
  • Feature
    Geyser pipeline for instant price updates

    Prices now update directly from the validator's Geyser plugin instead of polling public RPC. Vault balance changes stream in real-time through an SSH tunnel, giving sub-second price updates with zero RPC load. This eliminates the stale data issues caused by public RPC congestion.

  • Feature
    Validator SSH tunnel infrastructure

    Persistent autossh tunnel to the private validator for RPC, WebSocket, and Geyser relay access. Auto-reconnects on drop, survives reboots via systemd. All ports bound to localhost only.

  • Improvement
    SEO overhaul: sitemap, robots.txt, canonical URLs

    Added a dynamic sitemap.xml with 820+ URLs (all pool pages), robots.txt with crawl rules, and fixed canonical URLs on pair pages that were incorrectly pointing all 810 pages to the homepage.

  • Fix
    Fixed stale trade display on pair pages

    Trades now refresh immediately when switching back to the tab instead of waiting up to 60 seconds. Tightened polling intervals and added refetchOnWindowFocus to both trade and pool queries.

  • Fix
    Resolved 13-hour sync outage

    The batch sync pipeline hung overnight due to X1 public RPC instability — pool sync timed out 4 times, then the price poller got stuck on an unresponsive RPC call. Killed the stuck process and the Geyser pipeline now provides resilience against future RPC outages.

v0.9.6Mar 28, 2026
  • Feature
    Near-real-time price updates

    Pool prices now update within seconds of each trade via the WebSocket pipeline, instead of waiting for the 16-22 minute batch sync cycle. Active pools show live prices on both the screener table and pair detail pages.

  • Feature
    Dynamic SEO on pair pages

    Sharing a pair link on Discord, Telegram, or Twitter now shows the token name, current price, 24h change, volume, and liquidity in the preview — instead of the generic site title.

  • Improvement
    Price freshness indicator

    The pair detail sidebar now shows "Updated X ago" with color coding: green (< 5 min), yellow (5-15 min), red (> 15 min). Auto-refreshes every 15 seconds.

  • Improvement
    Custom error and 404 pages

    Broken pages now show a styled error screen with a retry button instead of white-screening. Invalid URLs and missing pools get dedicated 404 pages with navigation back to the screener.

  • Fix
    Fixed Telegram bot crash loop

    The approval bot was stuck in a 409-conflict restart loop due to duplicate PM2 daemon processes. Cleaned up zombie daemons, added a singleton guard to prevent duplicates, and increased shutdown timeout for clean Telegram session release.

  • Fix
    Blocked API spam and tightened rate limits

    Blocked a persistent bot hammering a non-existent endpoint (/api/price/xnt) at the nginx level. Reduced API burst allowance from 60 to 20 requests.

v0.9.5Mar 26, 2026
  • Feature
    LP Pool Tool

    New tool at /lp-tool to search any token and see all its pools with prices, reserves, and liquidity. Prices for non-standard pairs (e.g. FOREST/XUNI) are derived by looking up each token's price from their own XNT or USDC pools. Includes a cross-price calculator to compute the correct rate when initializing a new pair.

  • Feature
    Cross-price calculator for new pool initialization

    Pick any two tokens and get the calculated exchange rate routed through shared intermediaries (XNT, USDC, pXNT, rXNT). Shows confidence level based on liquidity depth, with a reserve calculator that tells you exactly how much of each token to deposit.

  • Feature
    Token price lookup across all pools

    New /api/token-pools endpoint returns all pools for a token with derived USD prices — even for non-standard pairs where the pipeline shows $0. Paired token prices are looked up from their own pools in the system.

  • Fix
    Fixed x1-web restart loop on port conflict

    An orphaned Next.js process was holding port 3000, causing every PM2 restart to fail with EADDRINUSE. Added restart_delay and max_restarts to the PM2 config to prevent runaway restart loops.

  • Fix
    Top Gainers ticker loop fix

    The scrolling marquee now loops seamlessly without visible jumps or gaps at the wrap point

v0.9.4Mar 8, 2026
  • Feature
    Real-time sidebar stats on pair pages

    Price, volume, and trade counts in the sidebar now update instantly as trades stream in — no more waiting for the next poll cycle

  • Improvement
    Faster pair page data refresh (60s → 15s)

    Pool stats now refresh 4x more frequently on pair pages, keeping the sidebar in sync with live activity

  • Improvement
    Smarter trade feed polling

    When the live trade stream (SSE) is connected, redundant API polling backs off from 15s to 60s — reducing server load without affecting data freshness

  • Fix
    Fixed refetch storms on tab switch

    Switching browser tabs no longer triggers a burst of API requests across all active queries

  • Improvement
    Top Gainers ticker now derived from cached data

    The scrolling ticker no longer makes its own API call when pool data is already loaded — cuts duplicate requests on the home page

  • Feature
    Price Range ruler tool added to chart

    New ruler drawing tool on the chart toolbar lets you measure price distance and percentage change between two points

  • Fix
    Deterministic trade history ordering

    Trades with the same block timestamp now sort consistently by signature — fixes occasional row-shuffling in the transaction feed

  • Fix
    Fixed watchlist hydration mismatch

    Watchlist stars and badge counts no longer flash incorrectly on first page load

  • Fix
    Improved sticky table header on mobile

    Table header stays visually anchored when scrolling horizontally on small screens

  • Improvement
    Telegram community link added to sidebar
v0.9.3Feb 22, 2026
  • Fix
    Transfer indexer now captures plain transfer instructions

    Previously only transferChecked instructions were indexed — plain SPL transfer instructions are now resolved via token balance entries and captured as edges

  • Fix
    AMM filter relaxed from transaction-level to instruction-level

    Mixed transactions containing both a swap and a separate wallet-to-wallet transfer no longer lose the transfer edge

  • Improvement
    X-Ray empty state now shows explanation instead of blank graph

    Tokens with no transfers show a clear message distinguishing between "not yet indexed" and "no transfers found (AMM-only activity)"

  • Improvement
    Re-indexed all 413 tokens with improved parsing

    All transfer index progress reset to re-scan with the new instruction-level filter and plain transfer support

v0.9.2Feb 18, 2026
  • Improvement
    Candle aggregator incremental rebuild

    Only re-aggregates candle buckets affected by new swaps instead of the full 48h window — major ClickHouse CPU reduction

  • Improvement
    Trade indexer 4x faster batch processing

    Reduced inter-batch sleep from 1s to 250ms with RPC rotation per batch to spread load across endpoints

  • Improvement
    WSS queue dedup now O(1) instead of O(n)

    Signature dedup in the real-time trade queue uses a Set lookup instead of linear array scan

  • Fix
    Fixed Telegram bot crash loop on restart

    Bot now properly releases the Telegram polling session on shutdown, preventing 409 conflicts on restart

  • Fix
    Removed dead RPC from trade indexer

    Dead endpoint 51.195.104.145 was still in trade indexer RPC list, causing timeout waste every 5th batch

  • Fix
    LP burn detection now recognizes burnChecked

    Safety score now detects LP tokens destroyed via SPL burnChecked instruction, not just tokens sent to burn addresses

  • Improvement
    Holder concentration scoring adjusted for small-cap tokens

    Threshold widened from 50% to 80% — early-stage tokens now get partial credit instead of a flat zero

  • Fix
    Holder concentration now excludes DEX vaults and burn addresses

    XDEX pool vaults, burn addresses, and system accounts are no longer counted as top holders in the safety score

v0.9.1Feb 15, 2026
  • Improvement
    Migrated CDN and token profile storage to gptree.vip

    Token profile images now served from gptree.vip via Cloudflare R2

  • Fix
    Fixed backup script failing on cron runs

    Scheduled backups had stopped running on cron — restored to clean nightly execution.

  • Fix
    LP burn detection now recognizes partial burns

    Safety score now shows actual burn percentage instead of binary pass/fail — pools with 50-90% LP burned get partial credit

  • Fix
    Transfer indexer batch retry on RPC failure

    Failed transaction batches now retry on a different RPC instead of silently dropping transfers

  • Improvement
    X-Ray view now shows all holders as nodes

    Holder bubbles are always visible in X-Ray, even when no wallet-to-wallet transfers exist

  • Fix
    X-Ray transfer graph now shows correct data per token

    Fixed fallback that caused all unindexed tokens to display the same XNT transfer graph

  • Fix
    Transfer indexer now scans full token history

    Scans up to 100k signatures per cycle per token, resuming deeper each cycle to reach initial distributions

  • Improvement
    Transfer indexer RPC split for reliable signature fetching

    Archival RPC for signature history, fast validator RPCs for transaction data

  • Fix
    AMM-only pages no longer count against indexer scan limit

    High-volume tokens with mostly swap activity are now scanned deeper to find actual transfers

  • Fix
    Removed dead RPC endpoint from WSS and transfer indexer
v0.9.0Feb 13, 2026
  • Feature
  • Feature
    X-Ray transfer graph with cluster detection
  • Feature
    Wallet Inspector panel with flow analysis
  • Feature
    On-demand transfer indexing
  • Feature
    Holder concentration metrics (Gini coefficient)
  • Improvement
    Known address labels (DEX vaults, burn address, system program)
  • Improvement
    Fullscreen mode for Bubble Map
  • Feature
    Token Safety Scanner with risk scoring
  • Feature
    Table sparklines for 24h price trends
  • Feature
    Biggest gainer ticker marquee
  • Feature
    Chart timezone selection
  • Feature
  • Fix
    Watchlist view preference now persists across reloads
  • Fix
    Mobile table header alignment on horizontal scroll
  • Fix
    Pool count display now shows true count beyond 500
v0.8.0Feb 7, 2026
v0.7.0Feb 3, 2026
  • Feature
    Real-time trade streaming (WSS → Redis Streams → SSE)
  • Feature
    Live trade feed with green pulsing indicator
  • Improvement
    Buy/sell volume split in sidebar
v0.6.0Jan 28, 2026
v0.5.0Jan 24, 2026