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

Rome SDK

واجهات Solidity مُنظَّمة لاستدعاء برامج Solana من عقود EVM، بالإضافة إلى SDK بلغة Rust الذي يقف خلف خدمات Rome خارج السلسلة.

توفر Rome SDK واجهات Solidity مُنَمْذَجة للتفاعل مع برامج Solana من عقود EVM الذكية. إنها مجموعة أدوات المطورين لبناء تطبيقات متعددة بيئات التشغيل على Rome.

مجموعات SDK

لدى Rome مجموعات SDK لثلاث فئات — مطورو التطبيقات (TypeScript)، ومطورو العقود (Solidity)، ومشغلو البنية التحتية (Rust).

TypeScript SDK (@rome-protocol/sdk)

لمطوري dapp والواجهة الأمامية — مجموعة SDK التي يبدأ بها معظم منشئي التطبيقات. @rome-protocol/sdk تغلف مسار الكتابة في Rome بحيث يرسل تطبيق ويب معاملات Rome بشكل صحيح: submitRomeTx (مسار الكتابة الصحيح بالإضافة إلى معالجة الغاز/الرسوم)، اشتقاق PDA / ATA، CPI invoke / invoke_signed المشفِّرات، وروابط precompile، و /bridge المسار الفرعي. التثبيت من المستودع أولاً (النشر على npm قيد الانتظار):

npm install github:rome-protocol/rome-sdk-ts#v0.2.1
import { submitRomeTx } from '@rome-protocol/sdk';
// أرسل أي كتابة EVM عبر Rome من خلال مسار الكتابة الصحيح (يتعامل مع ترميز الغاز/الرسوم).

العينات المرجعية العامة — rome-dex و cardo — تستهلك هذه المجموعة SDK.

المساران، مجموعة SDK واحدة. submitRomeTx هو مسار EVM (MetaMask). أمّا بالنسبة إلى مسار Solana — محفظة Phantom/Solana تدير تطبيق EVM الخاص بك — submitRomeTxSolanaLane يعكسه: يوقّع المستخدم معاملة Solana وتقوم Rome بتنفيذها كمعاملة EVM من هويته المشتقة، من دون مفتاح EVM. تنتقل القيمة إلى الداخل والخارج عبر buildFundLeg / buildSweepLeg بوصفه غلاف ERC-20 (مثل wUSDC), وليس msg.value الأصلي msg.value — لا يحتفظ المرسل الاصطناعي بأي شيء في حالة السكون — ويتم توفير مرسل اصطناعي أول مرة تلقائيًا عند أول استخدام. انظر ابنِ تطبيقًا ثنائي المسارين و استدعِ EVM من Solana.

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

لمطوري Solidity. يوفّر واجهات precompile، وأغلفة ERC-20/SPL، واشتقاق PDA، وأدوات CPI. نشر npm قيد الانتظار؛ حاليًا تستخدم هذه من rome-solidity المستودع العام (اعتماد git أو ملفات منسوخة).

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)

لمشغلي البنية التحتية. مساحة عمل Rust تتعامل مع تركيب المعاملات، والتفاعل مع Solana، وتسعير الغاز، وفهرسة الكتل. تُستخدم بواسطة Proxy وHercules.

Solidity SDK: ما المضمن

واجهات Precompile

اربط واجهة بعنوان precompile الخاص بها:

عمليات رموز SPL

استخدم IHelperProgram (0xff…09) للأوليات SPL الموقعة بواسطة مستخدم-PDA:

في المسار المخزن مؤقتًا، توجد العمليات المكافئة على ISplCached (0xff…05) و IAssociatedSplCached (0xff…06). انظر interface.sol لجميع الأشكال الزائدة؛ يستخدم العقد مسارًا واحدًا بشكل متسق.

اشتقاق PDA

الاستدعاء عبر البرامج

ERC-20 فوق رموز SPL

فك ترميز Borsh

بيانات Metaplex الوصفية

Rust SDK: البنية

Rust SDK هو مساحة عمل Cargo. حِزَمه الأساسية:

الحزمة
الغرض

rome-sdk

واجهة برمجة التطبيقات الأساسية: Rome بنية struct، والإعدادات، وأنواع المعاملات (RheaTx, RemusTx, RomulusTx)

rome-evm-client

عميل rollup لـ EVM، وTxBuilder، وResourceFactory، وتكامل المحاكي

rome-solana

برج Solana، وعميل RPC، وتجزئة المعاملات وتتبعها

rome-utils

أدوات RLP، وhex، وJSON-RPC، والمصادقة

rome-obs

قابلية المراقبة OpenTelemetry (التتبعات، المقاييس، السجلات)

rome-meteora

مهايئات مجمع Meteora DEX AMM لتسعير الغاز

rome-jito-bundler

منشئ حِزم Jito للإرسال الذري متعدد المعاملات

أنواع المعاملات

تجميع الموارد

تجمع SDK أزواج مفاتيح Solana (الدافعين) وفهارس حسابات المحتفظ بها لإرسال المعاملات بالتوازي:

خارطة طريق SDK

مُنشأ ويعمل

  • أغلفة رموز SPL وواجهات precompile

  • مبادلات Meteora DAMM v1 عبر CPI

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

  • مساعدات System Program، وفك ترميز Borsh

  • ERC20SPL Factory + عقود الجسر

ما التالي

آخر تحديث

هل كان هذا مفيدا؟