Skip to main content
Build wallet flows in TypeScript or Rust. Follow the TypeScript guides below, or start your Rust integration with the package reference.

Build a wallet flow in TypeScript

Set up your environment

Prepare the TypeScript examples and a local Solana validator.

Create a wallet

Create a Swig account and choose its initial authority.

Manage authorities

Add authorities with SOL or token spending permissions.

Sign a transaction

Authorize wallet instructions with the selected role.

Send a transfer

Follow the SOL transfer example with a spending authority.

Sponsor transaction fees

Use Swig’s hosted Paymaster with an API key and funded paymaster.

Choose your client

The TypeScript package guide also covers shared helpers and lower-level encoding. Use instruction builders for direct Rust instruction construction.

Add more wallet capabilities

Explore sessions, passkeys, swaps, and subaccounts as your integration grows. The Solana protocol guide explains the account, permission, and execution models behind these flows. For API-key-based transaction preparation and sponsorship from a trusted server, use the Developer SDK. Building on EVM? See Swig on EVM.