π₯ Solignition CLI
A command-line tool for deploying Solana programs via the Solignition lending protocol β deploy without upfront capital.
Overview
Solignition lets you deploy Solana programs by taking a short-term loan to cover deployment costs (rent + transaction fees). This CLI handles the full workflow:
- Upload your compiled
.sobinary - Deploy β request a loan and get your program deployed on-chain
- Repay the loan to claim full program ownership
Installation
Pick whichever channel fits your workflow.
crates.io (Rust)
npm / yarn
# or
The npm package ships precompiled binaries for Linux (x64 / arm64), macOS (x64 / arm64), and Windows (x64) β no Rust toolchain required.
Prebuilt binaries
Grab the archive for your platform from the latest GitHub Release, extract, and put solignition on your PATH.
From source
# Binary at target/release/solignition
Prerequisites (source builds only)
- Rust 1.75+ (
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh) - Solana CLI tools (for keypair management)
- A Solana wallet with some SOL for transaction fees
Quick Start
# 1. Initialize configuration
# 2. Check your wallet
# 3. Upload your program binary
# 4. Deploy (uploads + requests loan + deploys in one step)
# 5. Check deployment status
# 6. Repay loan when ready to claim ownership
Commands
solignition init
Interactive setup wizard. Configures API URL, RPC endpoint, keypair path, and program ID.
solignition config
Display current configuration.
solignition upload <FILE>
Upload a compiled Solana program (.so file) to the deployer service. Returns a File ID and estimated deployment cost.
solignition deploy
Request a deployment loan and deploy your program. Can either reference a previous upload or upload-and-deploy in one step.
# Using a previous upload
# Upload and deploy in one step
# Customize loan terms
# Skip confirmation prompt
Options:
| Flag | Description | Default |
|---|---|---|
--file-id |
File ID from previous upload | β |
--file |
Path to .so file | β |
--duration |
Loan duration in seconds | 604800 (7 days) |
--interest-rate-bps |
Interest rate in basis points | Protocol default |
--admin-fee-bps |
Admin fee in basis points | Protocol default |
-y, --yes |
Skip confirmation | false |
solignition repay <LOAN_ID>
Repay your loan and receive program upgrade authority.
solignition status <LOAN_ID>
Check the deployment status for a specific loan.
solignition uploads
List all your uploaded binaries.
solignition loans
List all your deployment loans and their statuses.
solignition health
Check if the deployer service is running.
solignition wallet
Show your wallet address and SOL balance.
solignition protocol-info
Fetch and display on-chain protocol configuration (fees, rates, counters).
Configuration
Configuration is stored at ~/.solignition/config.toml:
= "https://api.solignition.ngrok.app"
= "https://api.devnet.solana.com"
= "/home/user/.config/solana/id.json"
= "HVzpjSxwECnb6uY9Jnia48oJp4xrQiz5jgc5hZC5df63"
api_urlmust be set before deploying. The default points athttps://api.solignition.ngrok.appfor development. Runsolignition initto change it currently there is no need to change the default until mainnet.
Environment Variables
All config values can be overridden via environment variables:
| Variable | Description |
|---|---|
SOLIGNITION_API_URL |
Deployer API endpoint |
SOLANA_RPC_URL |
Solana RPC endpoint |
SOLIGNITION_KEYPAIR |
Path to wallet keypair |
SOLIGNITION_PROGRAM_ID |
Solignition program ID |
CLI Flags
Global flags override both config file and environment variables:
Typical Workflow
ββββββββββββ ββββββββββββββββ βββββββββββββββ ββββββββββββ
β Upload ββββββΆβ Request Loan ββββββΆβ Deploy ββββββΆβ Repay β
β .so file β β on-chain β β (auto) β β + claim β
ββββββββββββ ββββββββββββββββ βββββββββββββββ ββββββββββββ
β β β β
βΌ βΌ βΌ βΌ
File ID Loan created Program live on Authority
+ cost est. + SOL disbursed Solana (deployer transferred
holds authority) to borrower
Loan States
| State | Description |
|---|---|
active |
Loan is active, program deployed |
pending |
Loan created, awaiting deployment |
repaid |
Loan repaid, authority transfer pending |
repaidPendingTransfer |
Repaid, authority being transferred |
recovered |
Loan expired, program recovered |
reclaimed |
SOL reclaimed from recovered program |
Networks
- Default: Devnet. Safe for first-time use and program testing.
- Mainnet-beta: TBA override with
--rpc-url https://api.mainnet-beta.solana.com(or the URL of your mainnet RPC provider β Helius, QuickNode, Triton, etc.). The CLI detects mainnet via genesis hash and inserts an extra confirmation prompt before any signing action.--yesskips it for automation.
License
MIT