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

Rome SDK

Typisierte Solidity-Interfaces zum Aufrufen von Solana-Programmen aus EVM-Verträgen sowie das Rust-SDK hinter den Off-Chain-Services von Rome.

Das Rome SDK stellt typisierte Solidity-Interfaces bereit, um von EVM-Smart-Contracts aus mit Solana-Programmen zu interagieren. Es ist das Entwickler-Toolkit für den Aufbau von Anwendungen über Laufzeitumgebungen hinweg auf Rome.

SDKs

Rome hat SDKs für drei Zielgruppen — App-Builder (TypeScript), Contract-Entwickler (Solidity) und Infrastruktur-Betreiber (Rust).

TypeScript-SDK (@rome-protocol/sdk)

Für Dapp- und Frontend-Entwickler — das SDK, mit dem die meisten App-Builder beginnen. @rome-protocol/sdk umhüllt den Rome-Schreibpfad, sodass eine Web-App Rome-Transaktionen korrekt übermittelt: submitRomeTx (der korrekte Schreibpfad plus Gas-/Gebührenbehandlung), PDA-/ATA-Ableitung, CPI invoke / invoke_signed Encoder, Precompile-Bindungen und einen /bridge Subpfad. Installation per Repo zuerst (npm-Veröffentlichung ausstehend):

npm install github:rome-protocol/rome-sdk-ts#v0.2.1
import { submitRomeTx } from '@rome-protocol/sdk';
// Sende jede Rome-EVM-Schreiboperation über den korrekten Schreibpfad ab (behandelt Gas-/Gebührenkodierung).

Die öffentlichen Referenz-Apps — rome-dex und cardo — verwenden dieses SDK.

Beide Pfade, ein SDK. submitRomeTx ist der EVM-Pfad (MetaMask). Für den Solana-Pfad — eine Phantom-/Solana-Wallet, die Ihre EVM-App steuert — submitRomeTxSolanaLane bildet das Gegenstück dazu: Der Nutzer signiert eine Solana-Transaktion, und Rome führt sie als EVM-Transaktion aus seiner abgeleiteten Identität aus, ganz ohne EVM-Schlüssel. Werte fließen hinein und hinaus über buildFundLeg / buildSweepLeg als ERC-20-Wrapper (z. B. wUSDC), nicht nativ msg.value — der synthetische Absender hält im Ruhezustand nichts — und ein erstmals verwendetes synthetisches Konto wird beim ersten Gebrauch automatisch bereitgestellt. Siehe Erstelle eine App mit zwei Pfaden und EVM von Solana aus aufrufen.

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

Für Solidity-Entwickler. Stellt die Precompile-Interfaces, ERC-20/SPL-Wrapper, PDA-Ableitung und CPI-Utilities bereit. Die npm-Veröffentlichung steht noch aus; heute beziehst du diese aus dem öffentlichen rome-solidity Repo (Git-Abhängigkeit oder kopierte Dateien).

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";

Rust-SDK (rome-sdk)

Für Infrastruktur-Betreiber. Ein Rust-Workspace, der Transaktionszusammenstellung, Solana-Interaktion, Gaspreisgestaltung und Blockindizierung übernimmt. Verwendet von Proxy und Hercules.

Solidity-SDK: Enthaltenes

Precompile-Interfaces

Binde ein Interface an seine Precompile-Adresse:

SPL-Token-Operationen

Verwende IHelperProgram (0xff…09) für mit User-PDA signierte SPL-Primitiven:

Auf dem Cache-Pfad liegen die entsprechenden Operationen auf ISplCached (0xff…05) und IAssociatedSplCached (0xff…06). Siehe interface.sol für alle Überladungen; ein Vertrag verwendet durchgehend einen Pfad.

PDA-Ableitung

Cross-Program-Aufruf

ERC-20 über SPL-Token

Borsh-Deserialisierung

Metaplex-Metadaten

Rust SDK: Architektur

Das Rust SDK ist ein Cargo-Workspace. Seine Kern-Crates:

Crate
Zweck

rome-sdk

Kern-API: Rome Struktur, Konfiguration, Transaktionstypen (RheaTx, RemusTx, RomulusTx)

rome-evm-client

EVM-Rollup-Client, TxBuilder, ResourceFactory, Emulator-Integration

rome-solana

Solana-Tower, RPC-Client, Transaktions-Batching und -Tracking

rome-utils

RLP-, Hex-, JSON-RPC- und Authentifizierungs-Utilities

rome-obs

OpenTelemetry-Beobachtbarkeit (Traces, Metriken, Logs)

rome-meteora

Meteora-DEX-AMM-Pool-Adapter für die Gaspreisgestaltung

rome-jito-bundler

Jito-Bundle-Builder für atomare Mehrfach-Transaktionsübermittlung

Transaktionstypen

Ressourcen-Pooling

Das SDK pooled Solana-Keypairs (Payer) und Holder-Kontoinstanzen für die parallele Transaktionsübermittlung:

SDK-Roadmap

Fertig und funktionsfähig

  • SPL-Token-Wrapper und Precompile-Interfaces

  • Meteora DAMM v1 Swaps über CPI

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

  • System-Program-Helper, Borsh-Deserialisierung

  • ERC20SPL-Factory + Bridge-Verträge

Was kommt als Nächstes

Zuletzt aktualisiert

War das hilfreich?