Solana Program Clients: TypeScript en Rust

Een Solana-programma is maar de helft van een product. Uw frontend, backend, bots en partners moeten er allemaal mee praten: de juiste instructies opbouwen, de juiste accounts meegeven, ondertekenen, versturen en bevestigen. Dat is de taak van een program client. Een goede client maakt uw programma makkelijk en veilig in gebruik; een zwakke zorgt voor mislukte transacties, verwarde gebruikers en supportvragen.

Wat wij bouwen

  • TypeScript-clients voor webapps en Node.js-backends, gebouwd op de actuele JavaScript-bibliotheken van Solana.
  • Rust-clients voor bots, services met hoge doorvoer en andere programma's.
  • Code gegenereerd uit uw IDL: met Anchor of codegeneratoren worden instructies en accounttypes gegenereerd uit de interfacedefinitie van het programma, zodat client en programma nooit uit elkaar lopen.
  • Accounts uitlezen: programma-accounts omzetten naar getypeerde objecten, inclusief hulpfuncties om PDA's af te leiden.
  • SDK's voor partners: een gedocumenteerd pakket dat andere teams kunnen integreren zonder uw programmacode te lezen.

Transacties die aankomen

De meeste frustratie met Solana-apps komt van transacties die verlopen of mislukken. Wij bouwen clients die dit goed afhandelen:

  • Priority fees: een compute unit-prijs instellen op basis van recente netwerkomstandigheden, zodat transacties ook in drukke periodes worden opgenomen.
  • Compute budget: de compute units aanvragen die een transactie werkelijk nodig heeft, op basis van simulatie, in plaats van de standaardwaarde.
  • Eerst simuleren: simuleren vóór het versturen, zodat fouten aan de gebruiker worden getoond voordat die tekent.
  • Verlopen blockhash en opnieuw proberen: bijhouden wanneer de blockhash van een transactie verloopt en veilig opnieuw versturen, zonder dubbele uitvoering.
  • Bevestigingsniveaus: kiezen tussen processed, confirmed en finalized, afhankelijk van wat er op het spel staat.
  • Versioned transactions en lookup tables: voor transacties die veel accounts raken en anders de maximale grootte zouden overschrijden.

Veelgestelde vragen over Solana program clients

Kunnen jullie een client bouwen voor een programma dat wij niet zelf schreven?

Ja. Met een gepubliceerde IDL is dat eenvoudig; zonder IDL werken wij vanuit de broncode van het programma of reconstrueren wij de opbouw van de instructies, en testen wij zorgvuldig tegen het gedeployde programma.

TypeScript of Rust?

TypeScript voor webfrontends en de meeste backends. Rust voor latentiegevoelige bots, services met veel volume, of als de client code deelt met het programma zelf. Veel projecten hebben beide.

Waarom mislukken Solana-transacties in drukke periodes?

Meestal omdat de priority fee te laag is, het compute budget niet klopt of de blockhash verloopt voordat de transactie wordt opgenomen. Een goed gebouwde client handelt alle drie af.

Wie is eigenaar van de code?

Het eigendom van de broncode wordt contractueel vastgelegd, en de code kan volledig van u zijn, inclusief documentatie en tests.

Ook betrouwbare toegang tot data nodig? Zie Solana RPC tooling.

Onderdeel van onze Solana ontwikkeling.

Praat betrouwbaar met uw programma

Vertel ons over uw programma en wie ermee moet integreren. Wij bouwen een client die het makkelijk en veilig in gebruik maakt.

Plan een vrijblijvend gesprek over Solana program clients