> ## Documentation Index
> Fetch the complete documentation index at: https://docs.evox.wraithesports.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Hızlı başlangıç

> npx ile plugin projesi oluşturun, evoX'e yükleyin ve ilk aksiyonunuzu cihazda görün.

<Warning>T1 trusted local Node kodudur ve sandbox değildir. Yalnız incelediğiniz ve güvendiğiniz kaynağı çalıştırın.</Warning>

Bu sayfa sıfırdan çalışan bir **T1 (yerel geliştirme)** plugin'ini anlatır: proje oluştur → evoX'e yükle → tuşa ata → cihazda gör. Tier'ler için önce <a href="/sdk/trust-tiers">Trust tier'ları</a> sayfasına bakabilirsiniz:

<CardGroup cols={3}>
  <Card title="T0 · Veri paketi" href="/application/publish-your-pack">Profil/ikon/ses — kod yok, bugün yayınlanabilir.</Card>
  <Card title="T1 · Yerel dev" href="/sdk/trust-tiers">Bu sayfa. Ayrı Node process, sandbox değil.</Card>
  <Card title="T2 · Public sandbox" href="/sdk/distribution-status">Default-deny capability; public upload kapalı.</Card>
</CardGroup>

## 1. Projeyi oluşturun

Node.js 20+ yeterli; kurulum gerekmez:

```bash theme={}
npx @evoxapp/plugin-cli init my-plugin --runtime trusted-node --name "İlk Plugin"
cd my-plugin
npm install
```

Şablon şunları üretir:

```text theme={}
my-plugin/
├── manifest.json    # Host sözleşmesi: kimlik, runtime, izinler, aksiyonlar
├── runtime.mjs      # Plugin giriş noktası (SDK client + event handler'lar)
├── package.json     # @evoxapp/plugin-sdk bağımlılığı
└── README.md        # Bu adımların özeti
```

`runtime.mjs` içinde hazır bir örnek vardır: **Merhaba** aksiyonu tuşta göründüğünde "Merhaba" yazar, basınca saati gösterir.

```js theme={}
client.on('action.keyDown', async (event) => {
  if (event.context?.actionId !== 'hello') return;
  await client.setTitle(event.context.bindingInstanceId, new Date().toLocaleTimeString('tr-TR', { hour: '2-digit', minute: '2-digit' }));
  await client.showSuccess(event.context.bindingInstanceId);
});
```

## 2. evoX'e yükleyin

<Steps>
  <Step title="Geliştirici penceresini açın">
    evoX masaüstünde **Eklentiler** bölümüne gidin ve üst çubuktaki **Geliştirici** butonuna tıklayın.
  </Step>

  <Step title="Projeyi seçin">
    **Proje seç** ile `my-plugin` klasörünü seçin. Manifest host tarafından doğrulanır; hata varsa açık mesaj görürsünüz.
  </Step>

  <Step title="Güven verin ve başlatın">
    T1 risk metnini okuyup güveni onaylayın, ardından plugin'i **başlatın**. Plugin ayrı bir Node process olarak çalışır; durumunu ve loglarını aynı pencereden izlersiniz.
  </Step>

  <Step title="Tuşa atayın">
    **Tuşlar** ekranında aksiyon kitaplığından **Merhaba** aksiyonunu bir tuşa atayın. Tuşta "Merhaba" görünür; basınca saat yazılır.
  </Step>
</Steps>

## 3. Geliştirme döngüsü

* Kodu değiştirin → Geliştirici penceresinden **yeniden yükle**. Uygulamayı kapatmanız gerekmez.
* Loglar aynı pencerede bounded/redacted gösterilir; `console.error` çıktınız buraya düşer.
* Kimlik hosta aittir: `client.session.plugin.pluginId` atanır, plugin kendi kimliğini/izinlerini seçemez.

## Sonraki adımlar

<CardGroup cols={2}>
  <Card title="Entegrasyon plugini yaz" href="/sdk/build-integrations">OBS/Twitch/Spotify tarzı Market entegrasyonları (tam Node + npm).</Card>
  <Card title="İlk gerçek plugin (tutorial)" href="/sdk/tutorial-first-plugin">Ayarlar + host-brokered ağ ile hava durumu göstergesi yapın.</Card>
  <Card title="Event referansı" href="/sdk/events-reference">Tüm event ve host-RPC yüzeyi.</Card>
  <Card title="Manifest" href="/sdk/manifest">Runtime, izin ve aksiyon alanları.</Card>
  <Card title="Public hedef (T2)" href="/sdk/distribution-status">sandbox-js projesi: `npx @evoxapp/plugin-cli init my-plugin` (varsayılan) — public upload açılınca yayın hedefi.</Card>
</CardGroup>
