gill
A higher-level TypeScript layer bundling @solana/kit patterns for common flows.
Search across all documentation pages
A higher-level TypeScript layer bundling @solana/kit patterns for common flows.
npm install gill @solana/kit@7.0.0import { createSolanaClient } from "gill";When to reach for this:
import { createSolanaClient } from "gill";
import { address } from "@solana/kit";
const { rpc, sendAndConfirmTransaction } = createSolanaClient({
urlOrMoniker: "devnet",
});
const balance = await rpc.getBalance(address("PUBKEY")).send();What this demonstrates:
createSolanaClient wires RPC and common send helpers.devnet, mainnet) reduce env typos.| Alternative | Use When | Don't Use When |
|---|---|---|
| Raw @solana/kit | Full control | Rapid prototype |
| Anchor Program | Legacy fluent API | Kit-first architecture |
Run anchor build; point Codama at target/idl JSON.
Every on-chain interface change in CI.
Codama renders @solana/kit native functions.
Optional sugar atop kit.
Import generated clients in client components for writes.
Surfpool + devnet integration tests.
Do not mix with generated kit clients.
One Codama config per program or monorepo workspace.
Use generated decoders with getAccountInfo.
Map program error codes from IDL metadata.
Stack versions: This page was written for Agave 4.1.1, Solana CLI 3.0.10, Anchor 0.32.1, anchor-lang 0.32.1, Rust 1.91.1, @solana/kit 7.0.0, Surfpool 0.12.0, and LiteSVM 0.6.x.
Reviewed by Chris St. John·Last updated Jul 16, 2026