gill
Uma camada TypeScript de nível superior que agrupa padrões @solana/kit para fluxos comuns.
Receita
npm install gill @solana/kit@7.0.0import { createSolanaClient } from "gill";Quando usar:
- Bootstrap rápido de apps sobre kit 7.0.0.
- Fluxos RPC + transação padrão sem boilerplate.
- Projetos estilo create-solana-dapp.
Exemplo Prático
import { createSolanaClient } from "gill";
import { address } from "@solana/kit";
const { rpc, sendAndConfirmTransaction } = createSolanaClient({
urlOrMoniker: "devnet",
});
const balance = await rpc.getBalance(address("PUBKEY")).send();O que isso demonstra:
createSolanaClientconecta RPC e helpers de envio comuns.- Monikers (
devnet,mainnet) reduzem typos de env. - Tipos subjacentes permanecem nativos do kit para escape hatches.
Aprofundamento
Como funciona
- gill reexporta e compõe primitivas kit.
- Inclui helpers para interações frequentes com programas.
- Não substitui entender mensagens kit.
- Compatibilidade de versão acompanha majors do kit.
Erros comuns
- Tratar gill como caixa preta - difícil depurar txs. Correção: aprenda pipeline kit.
- Importar gill inteiro - tamanho de bundle. Correção: imports estreitos se pacote suportar subpaths.
- Moniker em produção - endpoints ambíguos. Correção: URLs explícitas de provedor na mainnet.
- Pular simulação - helpers de envio gill ainda precisam disciplina de preflight.
- Assumir que gill inclui output Codama - gere clientes de programa separadamente.
Alternativas
| Alternativa | Use quando | Não use quando |
|---|---|---|
| @solana/kit bruto | Controle total | Protótipo rápido |
| Anchor Program | API fluente legacy | Arquitetura kit-first |
FAQs
IDL Anchor 0.32.1?
Rode anchor build; aponte Codama para JSON em target/idl.
Quando regenerar?
Toda mudança de interface on-chain em CI.
Clientes tipados kit?
Codama renderiza funções nativas @solana/kit.
gill obrigatório?
Açúcar opcional sobre kit.
Next.js?
Importe clientes gerados em client components para escritas.
Testes?
Surfpool + testes de integração devnet.
web3.js?
Não misture com clientes kit gerados.
Múltiplos programas?
Uma config Codama por programa ou workspace monorepo.
Fetch de conta?
Use decoders gerados com getAccountInfo.
Erros?
Mapeie códigos de erro do programa a partir de metadados IDL.
Relacionados
- @solana/kit Basics - fundamentos
- Codama - clientes específicos de programa
- @solana/kit, Codama & gill - comparação
Versões da stack: Esta página foi escrita para 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 e LiteSVM 0.6.x.