Bot Hosting

Discord botu ZIP ile nasıl yüklenir? (discord.js, TypeScript ve discord.py)

2 Ekim 20263 dk okumaSon güncelleme: 2 Ekim 2026Yazar: Revolvant Ekibi
discord bot nasıl yüklenirdiscord.js bot yüklemepackage.json startrequirements.txtbot hosting zip
Kısa cevapBotunuzu ZIP ile yüklemek için klasörünüzde bir giriş dosyası (index.js, main.py ya da package.json'da start betiği) bulunmalı; bağımlılıklar package.json ya da requirements.txt'te listelenmeli; token gibi gizli değerler .env dosyasında olmalı. node_modules klasörünü ZIP'e koymayın; panel bağımlılıkları kendisi kurar. ZIP'in içinde dosyalar doğrudan kökte ya da tek bir üst klasörde olmalı; iç içe gereksiz klasörlerden kaçının.

Botunuzu hosting paneline yüklemek iki dakikalık bir iş olmalı. Çoğu "yüklendi ama çalışmıyor" sorunu da birkaç basit hatadan kaynaklanır. İşte doğru klasör yapısı ve kontrol listesi.

Önerilen klasör yapısı

Node.js (discord.js):

botum/
├─ index.js
├─ package.json
├─ package-lock.json
├─ .env
├─ commands/
└─ events/

Python (discord.py):

botum/
├─ main.py
├─ requirements.txt
├─ .env
└─ cogs/

1. package.json ve start betiği

{
  "name": "botum",
  "version": "1.0.0",
  "main": "index.js",
  "scripts": { "start": "node index.js" },
  "dependencies": {
    "discord.js": "^14.16.0",
    "dotenv": "^16.4.0"
  }
}

Panel, package.json içindeki start betiğini (ya da main alanını) giriş noktası olarak kullanır. Bağımlılıklar dependencies içinde olmalı; devDependencies'e koyduğunuz paketler gerekliyse üretimde kurulmayabilir.

2. Gizli değerler: .env

TOKEN=bot_tokeniniz
CLIENT_ID=123456789012345678
  • Token'ı kodun içine yazmayın.
  • ZIP'i başkalarıyla paylaşacaksanız .env'i içine koymayın; değerleri panelin dosya editöründen girin.
  • Node.js'te require('dotenv').config() (ESM'de import 'dotenv/config') satırını giriş dosyanızın başına ekleyin.

3. Python botları

requirements.txt içinde sürümleri belirtin:

discord.py==2.4.0
python-dotenv==1.0.1

Giriş dosyası olarak main.py, bot.py ya da app.py kullanın. discord.py'de mesaj içeriği için intents.message_content = True unutulmamalı.

4. TypeScript botları

TypeScript için iki yol vardır:

  1. Derlenmiş çıktıyı yükleyin: npm run build sonrası dist/ klasörünü ve package.json'ı ZIP'leyin; start betiği node dist/index.js olsun.
  2. Doğrudan çalıştırın: tsx ile derlemeden çalıştırılabilir; start betiği tsx src/index.ts olabilir ve tsx bağımlılıkta bulunmalıdır.

Revolvant, TypeScript botlarını derlemeden tsx ile de çalıştırabilir.

5. ZIP'i hazırlama

  • node_modules klasörünü eklemeyin. Panel bağımlılıkları kendisi kurar; başka bir işletim sisteminde derlenmiş modüller zaten uyumsuz olur.
  • .git, venv/.venv ve __pycache__ klasörlerini dışarıda bırakın.
  • ZIP içinde dosyalar köke ya da tek bir üst klasörün içine konsun.
  • Boyutu küçük tutun; büyük veri dosyalarını ayrıca yönetin.

6. Panele yükleme (Revolvant)

  1. Giriş yapın ve Yeni düğmesine tıklayın.
  2. ZIP'i sürükleyin; bot adını girin.
  3. Panel giriş dosyasını bulur, bağımlılıkları kurar ve ilerlemeyi canlı gösterir.
  4. Başlat'a basın; Loglar sekmesinde bağlantı mesajını doğrulayın.
  5. Otomatik yeniden başlatma, bildirim ve yedek ayarlarını gözden geçirin.

Henüz hesabınız yoksa kayıt olun.

Sık hatalar ve çözümleri

HataÇözüm
Cannot find module 'discord.js'package.json bağımlılıklarını kontrol edin; panelde bağımlılık kurulum loguna bakın
TokenInvalid.env içindeki TOKEN değerini ve dosya adını kontrol edin
Bot çevrimiçi ama komutlara cevap vermiyorIntent'ler (Message Content), komut kaydı ve izinler
Giriş dosyası bulunamadıKökte index.js/main.py ya da start betiği olsun; ZIP'te fazladan iç içe klasör olmasın
ESM hatası (require is not defined)package.json'da "type": "module" varsa import kullanın
ModuleNotFoundError (Python)requirements.txt eksik; paketi ekleyin

Yüklemeden önce son kontrol

  • ☐ start betiği ya da giriş dosyası var
  • ☐ Bağımlılıklar listede
  • ☐ .env değerleri tamam (token, kimlikler)
  • ☐ node_modules ZIP'te yok
  • ☐ Yerelde npm start / python main.py ile çalıştığını doğruladım

Sık sorulan sorular

Hangi dosya giriş dosyası sayılır?

Önce package.json içindeki start betiği ve main alanı, ardından index.js, main.js, bot.js; Python için main.py, bot.py, app.py gibi yaygın adlar aranır.

ZIP'e `node_modules` koymalı mıyım?

Hayır. Panel npm install ile bağımlılıkları kendisi kurar. ZIP'e koymak boyutu şişirir ve platforma özel modüllerle uyumsuzluk yaratabilir.

Yüklediğim botu sonradan nasıl güncellerim?

Panelin dosya yöneticisinden dosyaları düzenleyebilir ya da yeni bir ZIP yükleyebilirsiniz. Güncellemeden önce tek tıkla yedek almanız önerilir.

Botum çok büyük bir ZIP. Yüklenir mi?

Büyük dosyalar parçalı (kaldığı yerden devam eden) yükleme ile gönderilir. Yine de gereksiz dosyaları ZIP'e koymamak yüklemeyi hızlandırır.

Botunuzu 7/24 çalıştırın

ZIP’i yükleyin, panel kursun, çalıştırsın ve izlesin.

İlgili yazılar