Ogni programma Solana legge e scrive lo stesso stato, quindi uno swap, il rimborso di un prestito e l'aggiornamento di un oracle possono essere eseguiti in un'unica transazione atomica. Parti da un'app Anchor funzionante, integra liquidità reale e distribuisci seguendo le pratiche di produzione.
Proprietà su cui puoi basare il design del tuo protocollo
Componibilità atomica
I programmi si chiamano a vicenda tramite Cross Program Invocation all'interno di un'unica transazione. Se un qualsiasi passaggio fallisce, l'intera transazione viene annullata, quindi una strategia multi-protocollo non si conclude mai a metà.
Ogni transazione dichiara in anticipo gli account che legge e scrive. Il runtime esegue in parallelo le transazioni che non toccano gli stessi account scrivibili, così un mercato congestionato non blocca quelli non correlati.
Le transazioni che scrivono su un account conteso competono per la quota di blocco di quell'account. Calcola le priority fee in base agli account su cui scrivi, non alle medie dell'intera rete.
I tempi di slot della mainnet vengono ridotti per fasi e Alpenglow sostituirà l'attuale protocollo di voto e finalità. Tieni d'occhio entrambi prima di regolare la scadenza delle quotazioni, i timeout e le finestre di liquidazione.
Il percorso predefinito per un nuovo protocollo: Anchor per il programma, LiteSVM e Surfpool per i test, Codama per i client e Kit per l'app.
01Scrivi il programma
Anchor o Pinocchio
Anchor è il framework consigliato per la maggior parte dei programmi, con validazione degli account, generazione dell'IDL e helper per le CPI integrati. Usa Pinocchio, una libreria senza dipendenze, sui percorsi critici in cui ogni compute unit conta.
Esegui test rapidi in-process con LiteSVM o Mollusk. Poi esegui i test di integrazione su Surfpool, una rete locale che carica on demand gli account della mainnet, così puoi testare con pool e oracle reali.
Genera client TypeScript e Rust tipizzati a partire dall'IDL del tuo programma, in modo che instruction builder e decoder degli account restino allineati a ogni deploy.
@solana/kit è l'SDK JavaScript standard. Il suo plugin per wallet individua i wallet installati tramite Wallet Standard, senza pacchetti adapter per ogni singolo wallet.
Questi protocolli pubblicano la documentazione per sviluppatori relativa ai loro programmi e alle loro API. Leggi la documentazione e i report di audit di ciascun protocollo prima di instradare i fondi degli utenti attraverso di esso.
Swap e routing
Instrada gli swap attraverso la liquidità di Solana con l'API di un aggregatore, oppure richiedi le istruzioni grezze per comporre uno swap all'interno della tua transazione.
Emetti asset con comportamenti integrati che il tuo protocollo deve gestire: transfer hook, saldi che maturano interessi, importi UI scalati e trasferimenti confidenziali.
Solo a titolo di esempio. L'inclusione di un protocollo nell'elenco non costituisce un'approvazione da parte della Solana Foundation.
Invio delle transazioni
Fai arrivare le transazioni quando i mercati si muovono
Il traffico DeFi raggiunge i picchi nei momenti di volatilità, proprio quando gli utenti hanno bisogno che le loro transazioni vadano a buon fine. Integra questi accorgimenti nel tuo client prima della mainnet.
1
Imposta limiti di calcolo e priority fee
Simula per misurare le compute unit, imposta un limite stretto e calcola le priority fee in base alle fee recenti degli account su cui scrivi.
Le transazioni v1 aumentano il limite di dimensione; le address lookup table comprimono lunghi elenchi di account. Ciascuna comporta un compromesso per le route complesse.
Monitora la scadenza del blockhash, ritrasmetti finché la transazione non viene confermata o non scade e conferma al livello di commitment richiesto dalla tua logica.
Un programma DeFi può custodire i fondi degli utenti fin dal primo deploy. Controlla chi può modificarlo, dimostra cosa è stato distribuito e monitora cosa fa.
Affida le authority a un multisig
Conserva le authority di upgrade e di amministrazione del programma in un multisig Squads, con un time lock sulle modifiche.
Ottieni audit indipendenti prima della mainnet e avvia un bug bounty. La Solana Foundation finanzia le valutazioni di sicurezza STRIDE e strumenti gratuiti per i team dell'ecosistema.