> For the complete documentation index, see [llms.txt](https://docs.rome.builders/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rome.builders/tr/baslarken/quickstart.md).

# Hızlı başlangıç

İlk Solidity sözleşmenizi Rome üzerinde 5 dakikadan kısa sürede dağıtın.

Rome’da ilk Solidity sözleşmenizi 5 dakikadan kısa sürede dağıtın. Bu kılavuz şunları hedefler [**Hadrian**](/tr/aglar/hadrian.md), genel test ağı zinciri. [Rubicon](/tr/aglar/rubicon.md) ana ağ zinciridir; burada gas gerçek USDC’dir. Önce her şeyi bir test zincirinde deneyin.

## Ön koşullar

* [Node.js](https://nodejs.org/) v22.13+
* [MetaMask](https://metamask.io/) tarayıcı uzantısı
* Ayarı **Devnet**, yalnızca Solana’dan fon yüklerseniz (2. adım). Solana cüzdanından sözleşme çağırmak, Solana v1 işlemlerini imzalayan bir cüzdan gerektirir; bu, şurada ele alınıyor [Sözleşmenizi Solana kullanıcılarına açın](/tr/gelistirici-kilavuzlari/open-to-solana-users.md).

## 1. Hadrian’ı MetaMask’e ekleyin

Elle ekleyin (Ayarlar → Ağlar → Ağ ekle):

| Alan                | Değer                                           |
| ------------------- | ----------------------------------------------- |
| Ağ Adı              | Rome Hadrian                                    |
| RPC URL'si          | `https://hadrian.testnet.romeprotocol.xyz/`     |
| Zincir Kimliği      | `200010`                                        |
| Para Birimi Sembolü | `USDC`                                          |
| Blok Gezgini        | `https://via-hadrian.testnet.romeprotocol.xyz/` |

## 2. Cüzdanınıza fon yükleyin

Gas, zincirin gas token’ı ile ödenir; Hadrian’da bu USDC’dir. Hadrian’da bu, Circle’ın Solana Devnet USDC’siyle desteklenir (mint `4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU`), bu yüzden devnet SOL gas değildir. Rome faucet’i yoktur. Hadrian’a USDC getirmenin iki yolu vardır:

**Solana’dan** — Solana Devnet USDC’yi şuradan alın [Circle faucet'i](https://faucet.circle.com/) (Solana Devnet’i seçin) ve Solana ücretleri için biraz devnet SOL’u şuradan alın [Solana faucet'i](https://faucet.solana.com/), Solana cüzdanınız Devnet’e ayarlıyken. Ardından şunu kullanın [Rome Köprüsü](/tr/rome-uzerindeki-uygulamalar/bridge-api.md) Hadrian hedefi ve Solana rotası ile, alıcı olarak EVM cüzdanınızın adresini kullanarak; köprü, o EVM cüzdanından Hadrian üzerinde bir talep işlemi imzalamasını ister ve bu da USDC’yi gas’a dönüştürür.

**Bir EVM zincirinden köprüleyerek** — Ethereum Sepolia üzerinde test USDC’si basın [Circle faucet'i](https://faucet.circle.com/), ardından onu Rome’a şu araçla getirin [Rome Köprüsü](/tr/rome-uzerindeki-uygulamalar/bridge-api.md) (CCTP). Kaynak tarafındaki işlem için biraz Sepolia ETH’ye ihtiyacınız olacak — bakın [Faucets](/tr/kaynaklar/faucets.md) her faucet için.

**Ne kadar?** Rome’da bir yazma işlemi, Ethereum sezgisinin düşündürdüğünden daha pahalıdır; çünkü gas’ın çoğu Solana hesapları oluşturmaya gider: daha önce hiç kullanılmamış bir alıcı, yeni bir token hesabı, dağıtılmış bir sözleşme. Şunu kullanın `eth_estimateGas`ki standart araçlar da bunu yapar; ve 21.000’i asla sabitlemeyin. Tahmin, hesap oluşturmayı içerir, Rome işlemin gerçekten kullandığı gas’ı ücretlendirir (Hadrian üzerindeki ölçümlerde bu asla tahmini aşmadı) ve SDK’nın `submitRomeTx` tahmini 1,3x oranında bir marjla doldurur; bunun maliyeti yoktur çünkü yalnızca kullanılan gas ücretlendirilir. En az **0,5 USDC gas**yükleyin; 1 USDC rahat bir pay bırakır. İçindeki sayılar [JSON-RPC Desteği](/tr/referans/json-rpc.md) tek tek yazmaların ne kadara mal olduğunu gösterir.

Yüklü bir cüzdana rağmen Solana tarafındaki bir yatırma işlemi “yetersiz SOL” uyarısıyla başarısız olursa, Solana cüzdanınızı Testnet Modu / Devnet’e ayarlayın (şuna bakın [SSS](/tr/kaynaklar/faq.md)).

## 3. Bir Hardhat projesi oluşturun

```bash
mkdir rome-hello && cd rome-hello
npx hardhat --init
```

İstendiğinde varsayılanları kabul edin — Hardhat 3, geçerli dizin ve TypeScript + Node Test Runner + viem şablonu — ve bağımlılıkların kurulmasına izin verin. Şablon, örnek bir `Counter` testlerle birlikte bir sözleşme içerir; bunlar bu kılavuzla etkileşmez.

## 4. Hardhat’ı Rome için yapılandırın

Oluşturulan dosyayı düzenleyin `hardhat.config.ts` ve Rome ağlarını içine ekleyin `defineConfig({ ... })`:

```typescript
  networks: {
    hadrian: {
      type: "http",
      chainType: "l1",
      chainId: 200010,
      url: "https://hadrian.testnet.romeprotocol.xyz/",
      accounts: [configVariable("PRIVATE_KEY")],
    },
  },
```

`configVariable("PRIVATE_KEY")` ortamdan çözülür; bu yüzden MetaMask özel anahtarınızı dışa aktarın:

```bash
export PRIVATE_KEY="0xYOUR_PRIVATE_KEY"
```

(Geçici bir anahtarın ötesindeki her şey için, araç kutusuyla gelen şifreli anahtar deposunu tercih edin: `npx hardhat keystore set PRIVATE_KEY`.)

## 5. Bir sözleşme yazın

Oluşturun `contracts/HelloRome.sol`:

```solidity
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.28;

contract HelloRome {
    string public greeting = "Solana’dan merhaba!";
    uint256 public counter;

    event Greeted(address indexed sender, uint256 count);

    function greet() external returns (string memory) {
        counter++;
        emit Greeted(msg.sender, counter);
        return greeting;
    }

    function setGreeting(string calldata _greeting) external {
        greeting = _greeting;
    }
}
```

## 6. Dağıtın

Oluşturun `scripts/deploy.ts`:

```typescript
import hardhat from "hardhat";

async function main() {
  const { viem } = await hardhat.network.connect();
  const publicClient = await viem.getPublicClient();

  const hello = await viem.deployContract("HelloRome");
  console.log("HelloRome dağıtıldı:", hello.address);

  const hash = await hello.write.greet();
  await publicClient.waitForTransactionReceipt({ hash });

  console.log("Sayaç:", (await hello.read.counter()).toString());
  console.log("Selamlama:", await hello.read.greeting());
}

main().catch((error) => {
  console.error(error);
  process.exitCode = 1;
});
```

Hadrian’a dağıtın:

```bash
npx hardhat run scripts/deploy.ts --network hadrian
```

Beklenen çıktı (adresiniz farklı olacaktır):

```
HelloRome dağıtıldı: 0x09c437e305eeb698e1776cff23ca16c1bb25aabd
Sayaç: 1
Selamlama: Solana’dan merhaba!
```

Dağıtılan adresi şurada açın [gezginde](https://via-hadrian.testnet.romeprotocol.xyz/) işleminizin arkasındaki Solana talimatlarını görmek için. Solidity sözleşmeniz artık Solana üzerinde çalışıyor.

## Sırada Ne Var

* [Solidity dağıt](/tr/gelistirici-kilavuzlari/deploy-solidity.md) — Hardhat ve Foundry dağıtımı ayrıntılı olarak
* [EVM'den Solana'yı çağırma](/tr/gelistirici-kilavuzlari/call-solana-from-evm.md) — Solidity üzerinden CPI ile Solana programlarını çağırın
* [Mimari](/tr/baslarken/architecture.md) — Rome EVM’yi Solana içinde nasıl çalıştırır

## Yaygın Hatalar

| Hata                  | Neden                                                            | Çözüm                                                                                                          |
| --------------------- | ---------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
| `yetersiz bakiye`     | Gas limiti ile gas fiyatının çarpımı için yeterli gas tokenı yok | En az 0,5 USDC gas yükleyin (2. adıma bakın) ile [Rome Köprüsü](/tr/rome-uzerindeki-uygulamalar/bridge-api.md) |
| `nonce çok düşük`     | İşlem nonce uyumsuzluğu                                          | Hesabı sıfırlayın (MetaMask → Ayarlar → Gelişmiş → Etkinliği temizle)                                          |
| `yürütme geri alındı` | Sözleşme yürütmesi başarısız oldu                                | Sözleşme mantığını kontrol edin; kullanın `eth_call` hata ayıklamak için                                       |
| Bağlantı zaman aşımı  | RPC’ye ulaşılamıyor                                              | RPC URL’sini doğrulayın                                                                                        |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.rome.builders/tr/baslarken/quickstart.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
