Modern bir Web3 dApp birden fazla componentin koordineli calismasini gerektirir, frontend, akilli kontrat, RPC node, indexer, oracle ve IPFS bunlarin basinda gelir. Frontend genelde React ya da Next.js ile gelistirilir, ethers.js ya da viem kutuphaneleri ile wallet entegrasyonu (MetaMask, WalletConnect, Rabby) saglar, kullanicinin EOA cuzdani uzerinden transaction imzalama islemleri yapilir. Akilli kontrat blockchain uzerinde calisir, Solidity (Ethereum) ya da Rust (Solana, NEAR) ile yazilir, deployment sonrasinda immutable hale gelir. RPC node, frontend'in blockchain state'ini sorgulamasini ve transaction broadcast etmesini saglar, Infura ya da Alchemy gibi managed servisler kullanilabilir, ancak censorship riski ve metadata sizinmasi nedeniyle kendi RPC node'unuzu acmak tercih edilir. Indexer servisleri (The Graph) blockchain event'lerini sorgulanabilir GraphQL'e donusturur, kullanici islem geçmisi, NFT koleksiyonu, pool TVL gibi sorgular indexer uzerinden cevaplanir. IPFS dosyalari (NFT metadata, frontend build, kullanici uretmis icerik) decentralized olarak depolar, content-addressable hash sistemi ile dosyalar pinleyenler arasinda replikate olur.
The Graph Indexer Setup
The Graph protokolu Web3 indexing'in standardi haline gelmistir, hosted service uzerinde 30000'den fazla subgraph deploy edilmistir. Kendi indexer'inizi acmak istiyorsaniz Graph Node yazilimini AnubizHost VPS uzerinde calistirabilirsiniz, PostgreSQL backend ile blockchain event'ler indexlenir, GraphQL endpoint frontend tarafindan sorgulanir. Subgraph manifest YAML dosyasi ile hangi kontrat event'lerinin indexlenecegi tanimlanir, AssemblyScript ya da TypeScript ile mapping fonksiyonlari yazilir, raw event'ler structured data'ya donusturulur. Subgraph deployment Graph CLI ile yapilir, IPFS uzerinden subgraph manifesti pinlenir, Graph Node bu manifesti okur ve indexlemeye baslar. Decentralized The Graph network'unde indexer node operatorleri GRT token stake eder, query fee'leri ve indexing reward'lar kazanir. AnubizHost VPS Pro plan, orta olcekli subgraph indexlemek icin uygundur, 8 vCPU, 16GB RAM, 320GB NVMe ile Ethereum mainnet'in tum tarihi indexlenebilir. Daha buyuk archive node setup'lari icin dedicated server tercih edilir, 1TB+ NVMe storage gereksinimi olusur.
IPFS Gateway ve Censorship-Resistant Dagitim
IPFS yani InterPlanetary File System, dosyalari content-addressable hash uzerinden dagitan peer-to-peer bir agdir, dosyanin hash'i (CID) sabittir, hash dosyanin icerigi tarafindan deterministically uretilir, dosya degisirse hash de degisir. Kullanicilar IPFS dosyalarini bir gateway uzerinden HTTP ile cekebilir, ipfs.io en buyuk public gateway'dir ancak censorship riskine maruzdur. Kendi IPFS gateway'inizi AnubizHost VPS uzerinde acmak, dApp kullanicilarinizin third-party gateway'lere bagimliligini ortadan kaldirir, latency'i optimize eder, ozel pinning ile dosyalarin kalici olarak saklanmasini garanti eder. go-ipfs (Kubo) daemon'i Linux uzerinde calisir, swarm port'undan diger IPFS peer'leri ile baglanir, API port'undan local applications'a hizmet eder, gateway port'undan HTTP istekleri karsilar. Pinning servisi olarak Pinata, Infura IPFS, Web3.Storage gibi managed servisler kullanilabilir, ancak kendi pinning node'unuz daha dusuk maliyet ve full control saglar. NFT projeleri icin metadata ve image dosyalari IPFS uzerinde saklanir, baseURI olarak IPFS hash'i kontrata yazilir, OpenSea ve diger NFT marketplace'leri bu URI'leri otomatik cozer. AnubizHost VPS Growth plan IPFS daemon ve frontend serving icin yeterlidir, daha buyuk pinning operasyonlari icin Pro plan tercih edilir.