Anza Ships Solana Kit v7 With @solana/react Hooks and Transaction Introspection
Solana Kit v7 from Anza ships @solana/react with TanStack Query and SWR support, plus a new package to decode and parse confirmed Solana transactions.
Anza released Solana Kit v7 on July 15, shipping two new packages that address different parts of the Solana development workflow. @solana/react is a React hook layer that handles data fetching, subscriptions, and async actions without the manual wiring that Kit previously required. @solana/transaction-introspection solves a quieter but persistent problem: the gap between what the getTransaction RPC call returns and what program clients can actually parse.
Kit is Anza's TypeScript SDK for Solana, developed as the successor to the legacy @solana/web3.js library. Both new packages are available in the open-source anza-xyz/kit repository.
@solana/react Removes Boilerplate from Data Fetching and Subscriptions
The package's core layer ships four hooks. useRequest fetches a value on mount and exposes a refresh function. useSubscription surfaces the latest data from an RPC subscription and provides a reconnect function. useTrackedData combines both, starting with a fetched value and keeping it current through a live subscription. useAction wraps any async function with a dispatch call, a running flag, and an error state: the pattern that appears in nearly every wallet interaction.
For teams already using TanStack Query or SWR, the package ships sub-imports at @solana/react/query and @solana/react/swr. Each sub-import exposes query variants of the three data hooks: useRequestQuery, useSubscriptionQuery, and useTrackedDataQuery. Both sets plug into their respective library's caching, request deduplication, and devtools without adding a custom layer on top.
That last clause matters for teams not using React. Every RPC method in Kit now exposes a .reactiveStore() method returning a {data, error, status} object with subscribe and getState functions. The React hooks consume those stores; developers using Angular, Vue, Svelte, or SolidJS can consume them directly. The hooks are an optional convenience layer on top of an architecture that was designed to be framework-independent.
The hooks are also SSR-safe. Data fetching runs only on the client, meaning server-side rendering passes in Next.js or Remix will not trigger RPC calls during the server phase.
@solana/transaction-introspection Decodes Confirmed Transactions for Program Clients
The transaction introspection package targets a different kind of friction. When you call getTransaction on the Solana RPC, the response is shaped around wire-format conventions that are efficient to transmit but awkward to work with in application code. Instruction data arrives as an encoded string. Account references inside each instruction are integer indices into the transaction's account array, not public keys. Inner instructions from cross-program invocations are stored under a separate metadata field rather than alongside the outer instruction that triggered them.
None of that is a bug. It reflects how Solana serializes transaction data on the wire. But it means that anyone building an explorer, an indexer, or a transaction history view ends up writing the same decoding and resolution logic from scratch, every time.
@solana/transaction-introspection handles all three steps. It decodes instruction data based on the encoding format the RPC returns. It resolves account indices against the transaction's static key array and, where address lookup tables are involved, against the ALT-loaded addresses stored in meta.loadedAddresses. The package also normalizes inner instructions from meta.innerInstructions into the same structure as outer instructions. The resulting Instruction objects conform to the Kit format that Codama-generated program clients expect, making them usable directly in existing parsing code.
The package was contributed by @a_milz from the Solana Foundation. The Anza announcement thread framed the target audience plainly: "If you build explorers, indexers, or anything that reads confirmed transactions, @solana/transaction-introspection closes the gap between the shape of transaction that an RPC returns and what your program clients can parse."
Solana Kit v7 Extends the TypeScript SDK From Primitives to Application-Layer Tooling
Both packages extend Kit's scope beyond raw cryptographic primitives and transaction construction. The SDK began as a lower-level, tree-shakeable successor to @solana/web3.js, giving developers typed building blocks without the monolithic design of the original library. v7 builds opinionated layers on top: one for reactive UI, one for reading what confirmed transactions actually did.
The release lands the day after LiteSVM v0.14.0 shipped CPI call-tree debugging and aligned the local testing environment with Agave 4.1. The two releases cover opposite ends of the development cycle: Kit v7 helps developers build and read live Solana state in production; LiteSVM helps them understand CPI execution before deployment.
Full documentation for both packages is available on the official Anza blog.
Comments
Please login to leave a comment.
Contents
Related Content
Breakpoint 2023: How Phantom Integrated With Solana Mobile In Purely React Native
Alpenglow: Solana's 100x Improvement
Solana Changelog - Mar 12 - Solana hackathon, Anza fork, Anchor IDLs, Windows support
Token Extensions and Solana's Long-Term Strategy with Austin Federa
Solana's Path To Decentralized Nasdaq | Max Resnick
Solana Changelog - Feature Activation, Decoupling the SVM, and Rust v1.76
Alpenglow: Solana's Largest Protocol Upgrade Ever | Brennan Watt, Anza
Breakpoint 2025: Anza Block
Anza Sets Alpenglow Mainnet Date: Solana's Consensus Switch Is Scheduled for October 21 at About 14:50 UTC
The State of the Network: Anza
Solana Changelog May 16 - EpochStakes, SolFuzz, and Optimizations
Solana Changelog - February 13, 2024: DevNet Faucets, Token Extension Hooks, Leader Tipping, and Mountain DAO
Anza D1: The Future of Solana Core Development
Solana Changelog May 2 - Account Interfaces, Web3.js Experimental, and Tea Package Manager
Scale or Die at Accelerate 2025: solana-sdk is dead, long live the Solana SDK!
Latest news
Jito Announces BAM Direct Bundle Ingest, Routing Solana Bundles Past the Block Engine's 50ms Hop
Helium Moves Mobile Network Data to Apache Iceberg Tables Anyone Can Query With SQL, Switch-Over Due November 1
Squads Builder Says Falcon-512 Post-Quantum Multisig Voting Has Been Tested on Solana Mainnet
Pando Solana ETF (2831) Starts Trading in Hong Kong With 268,300 Units Changing Hands on Day One
Building Financial Software on Solana: Quicknode's Free Book Builds Ten Finance Programs, From Escrow to Perps
SkyAI Sells About 1M SOL to Fund Planned Tender Offer of Up to $201M, Rejects Forward Industries' Proposal
USDGO Goes Live on Jupiter Lend's AMM on Solana in Anchorage-Issued Stablecoin's 'DeFi Debut'
ASTER on Solana: Sunrise Lists Aster''s Token and Names a Contract Address, With No Word Yet From Aster
Solana's First Full Epoch at the 200ms Slot Time Target Averaged 218.3ms and Lasted 26.2 Hours
US Spot Solana ETFs Shed About $25M in a Week as Outflows Hit All Five Sessions
Solana Token Markets