For the complete documentation index, see llms.txt. This page is also available as Markdown.

Rome SDK

Antarmuka Solidity bertipe untuk memanggil program Solana dari kontrak EVM, plus SDK Rust di balik layanan off-chain Rome.

SDK Rome menyediakan antarmuka Solidity bertipe untuk berinteraksi dengan program Solana dari smart contract EVM. Ini adalah toolkit pengembang untuk membangun aplikasi lintas runtime di Rome.

SDK

Rome memiliki SDK untuk tiga audiens — pembangun aplikasi (TypeScript), pengembang kontrak (Solidity), dan operator infrastruktur (Rust).

SDK TypeScript (@rome-protocol/sdk)

Untuk pengembang dapp dan frontend — SDK yang paling sering dipakai oleh pembuat aplikasi sebagai titik awal. @rome-protocol/sdk membungkus jalur penulisan Rome agar aplikasi web mengirim transaksi Rome dengan benar: submitRomeTx (jalur penulisan yang benar plus penanganan gas/biaya), derivasi PDA / ATA, CPI invoke / invoke_signed encoder, binding precompile, dan sebuah /bridge subpath. Instal dari repo terlebih dahulu (npm publish menunggu):

npm install github:rome-protocol/rome-sdk-ts#v0.2.1
import { submitRomeTx } from '@rome-protocol/sdk';
// Kirim penulisan EVM Rome apa pun melalui jalur penulisan yang benar (menangani encoding gas/biaya).

Aplikasi referensi publik — rome-dex dan cardo — menggunakan SDK ini.

Dua jalur, satu SDK. submitRomeTx adalah jalur EVM (MetaMask). Untuk jalur Solana — dompet Phantom/Solana yang menjalankan aplikasi EVM Anda — submitRomeTxSolanaLane menirunya: pengguna menandatangani transaksi Solana dan Rome menjalankannya sebagai transaksi EVM dari identitas turunan mereka, tanpa kunci EVM. Nilai berpindah masuk dan keluar melalui buildFundLeg / buildSweepLeg sebagai wrapper ERC-20 (mis. wUSDC), bukan native msg.value — pengirim sintetis tidak menyimpan apa pun saat diam — dan sintetis pertama kali disediakan otomatis pada penggunaan pertama. Lihat Bangun aplikasi dua jalur dan Panggil EVM dari Solana.

SDK Solidity (@rome-protocol/rome-solidity)

Untuk pengembang Solidity. Menyediakan antarmuka precompile, wrapper ERC-20/SPL, derivasi PDA, dan utilitas CPI. Publish npm masih menunggu; saat ini Anda menggunakan ini dari rome-solidity repo publik (dependensi git atau file yang disalin).

import {ISystemProgram, ICrossProgramInvocation, IHelperProgram, IWithdraw}
    from "@rome-protocol/rome-solidity/contracts/interface.sol";
import {SPL_ERC20} from "@rome-protocol/rome-solidity/contracts/erc20spl/erc20spl.sol";
import {RomeEVMAccount} from "@rome-protocol/rome-solidity/contracts/rome_evm_account.sol";

SDK Rust (rome-sdk)

Untuk operator infrastruktur. Workspace Rust yang menangani penyusunan transaksi, interaksi Solana, penentuan harga gas, dan pengindeksan blok. Digunakan oleh Proxy dan Hercules.

SDK Solidity: Apa Saja yang Termasuk

Antarmuka Precompile

Hubungkan sebuah antarmuka ke alamat precompile-nya:

Operasi Token SPL

Gunakan IHelperProgram (0xff…09) untuk primitif SPL yang ditandatangani user-PDA:

Pada jalur cache, operasi yang setara ada di ISplCached (0xff…05) dan IAssociatedSplCached (0xff…06). Lihat interface.sol untuk semua overload; sebuah kontrak menggunakan satu jalur secara konsisten.

Derivasi PDA

Cross-Program Invocation

ERC-20 di atas Token SPL

Deserialisasi Borsh

Metadata Metaplex

Arsitektur SDK Rust

SDK Rust adalah workspace Cargo. Crate intinya:

Crate
Tujuan

rome-sdk

API Inti: Rome struct, config, tipe transaksi (RheaTx, RemusTx, RomulusTx)

rome-evm-client

klien rollup EVM, TxBuilder, ResourceFactory, integrasi emulator

rome-solana

tower Solana, klien RPC, batching dan pelacakan transaksi

rome-utils

utilitas RLP, hex, JSON-RPC, autentikasi

rome-obs

observabilitas OpenTelemetry (trace, metrik, log)

rome-meteora

adapter pool Meteora DEX AMM untuk penetapan harga gas

rome-jito-bundler

pembuat bundle Jito untuk pengiriman atomik multi-transaksi

Tipe Transaksi

Pooling Sumber Daya

SDK meng-pool keypair Solana (payer) dan indeks akun holder untuk pengiriman transaksi paralel:

Roadmap SDK

Sudah Dibangun dan Berfungsi

  • Wrapper token SPL dan antarmuka precompile

  • Swap Meteora DAMM v1 via CPI

  • Oracle Gateway V1 + V2 (Pyth Pull, Switchboard V3)

  • Helper System Program, deserialisasi Borsh

  • ERC20SPL Factory + kontrak bridge

Berikutnya

Terakhir diperbarui

Apakah ini membantu?