{"id":30847491,"url":"https://github.com/pordarman/ultimate-stat-bot","last_synced_at":"2026-05-03T15:35:18.497Z","repository":{"id":311188182,"uuid":"965790066","full_name":"pordarman/ultimate-stat-bot","owner":"pordarman","description":"A comprehensive statistics bot for Discord servers that tracks user voice and message activity. Features detailed leaderboards, personal stat lookups (!me), channel analysis, a blacklist system, and persistent data storage with MongoDB.","archived":false,"fork":false,"pushed_at":"2025-08-22T16:00:52.000Z","size":509,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-07T02:24:56.119Z","etag":null,"topics":["analytics-bot","discord-bot","discord-js","discordjs-v14","javascript","mongodb","nodejs","statistics","statistics-bot"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pordarman.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-04-13T22:46:14.000Z","updated_at":"2025-08-22T16:00:55.000Z","dependencies_parsed_at":"2025-08-22T18:48:54.432Z","dependency_job_id":"5ff56f7c-5b15-4924-ade7-c27f7ce60d20","html_url":"https://github.com/pordarman/ultimate-stat-bot","commit_stats":null,"previous_names":["pordarman/ultimate-stat-bot"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pordarman/ultimate-stat-bot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pordarman%2Fultimate-stat-bot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pordarman%2Fultimate-stat-bot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pordarman%2Fultimate-stat-bot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pordarman%2Fultimate-stat-bot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pordarman","download_url":"https://codeload.github.com/pordarman/ultimate-stat-bot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pordarman%2Fultimate-stat-bot/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32575112,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T06:36:36.687Z","status":"ssl_error","status_checked_at":"2026-05-03T06:36:09.306Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["analytics-bot","discord-bot","discord-js","discordjs-v14","javascript","mongodb","nodejs","statistics","statistics-bot"],"created_at":"2025-09-07T02:13:14.056Z","updated_at":"2026-05-03T15:35:18.488Z","avatar_url":"https://github.com/pordarman.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📊 Ultimate Stat Bot - Gelişmiş İstatistik Sistemi\r\n\r\nMerhaba! Bu proje, Discord sunucunuzdaki üye etkileşimlerini (ses ve mesaj) takip etmek, analiz etmek ve sıralamak için geliştirilmiş gelişmiş bir istatistik botudur. Sunucu aktivitesini ölçmek, en aktif üyeleri ödüllendirmek ve topluluk yönetimini veriye dayalı hale getirmek için ideal bir çözümdür.\r\n\r\n\u003e Bot, üyelerin ses kanallarında ne kadar süre geçirdiğini ve metin kanallarına kaç mesaj attığını anlık olarak takip eder. MongoDB veritabanı sayesinde bu verileri kalıcı olarak saklar ve çeşitli komutlarla detaylı raporlar sunar.\r\n\r\n---\r\n\r\n## 🚀 Özellikler\r\n\r\n-   📈 **Kapsamlı İstatistik Takibi:** Ses kanallarında geçirilen süre ve metin kanallarında atılan mesaj sayısını kullanıcı bazlı olarak takip eder.\r\n-   🏆 **Liderlik Tabloları:** Sunucunun en aktif üyelerini ses, mesaj ve genel kategorilerde listeleyen komutlar (`!top`, `!sesliste`, `!mesajliste`).\r\n-   👤 **Kişisel İstatistikler:** Her üyenin kendi veya başkasının detaylı istatistiklerini görmesini sağlayan `!ben` komutu.\r\n-   📢 **Kanal Bazlı Analiz:** Belirli bir metin veya ses kanalının aktivite raporunu sunan `!kanal` komutu.\r\n-   🛡️ **Karaliste Sistemi:** Belirtilen kullanıcıların istatistiklerinin sayılmasını engelleme özelliği.\r\n-   💾 **MongoDB Veritabanı:** Tüm istatistik verilerini güvenli ve kalıcı bir şekilde MongoDB (Atlas uyumlu) üzerinde saklar.\r\n-   ⚙️ **Hibrit Komut Desteği:** Hem `prefix (!)` hem de `slash (/)` komutlarını destekler.\r\n-   🔧 **Yeniden Yükleme:** Botu kapatmadan komutları ve eventleri yeniden yüklemek için `!reload` komutu (Sadece bot sahibi).\r\n-   💨 **Performans Odaklı:** Veritabanı sorguları ve veri işleme, performansı en üst düzeyde tutacak şekilde optimize edilmiştir.\r\n\r\n---\r\n\r\n## 📂 Kurulum Aşamaları\r\n\r\n### 1. Projeyi Klonla veya İndir\r\n\r\nProjeyi bilgisayarınıza klonlayarak başlayın.\r\n```bash\r\ngit clone https://github.com/pordarman/ultimate-stat-bot.git\r\ncd ultimate-stat-bot\r\n```\r\n\r\n### 2. Gerekli Paketleri Yükle\r\n\r\nProjenin çalışması için gerekli olan Node.js modüllerini yükleyin.\r\n```bash\r\nnpm install\r\n```\r\n\r\n### 3. `.env` Dosyasını Yapılandır\r\n\r\nProjenin ana dizininde `.env.example` dosyasını kopyalayıp `.env` adında yeni bir dosya oluşturun. Ardından bu dosyanın içini kendi bilgilerinizle doldurun.\r\n\r\n```env\r\n# --------------------------------- #\r\n#      BOT \u0026 VERİTABANI AYARLARI      #\r\n# --------------------------------- #\r\n\r\nDISCORD_TOKEN= # Botunuzun tokeni\r\nPREFIX=! # Botunuzun kullanacağı ön-ek (prefix)\r\nMONGO_URI= # MongoDB Atlas bağlantı URI'niz\r\n\r\n# --------------------------------- #\r\n#         YETKİLENDİRME AYARLARI        #\r\n# --------------------------------- #\r\n\r\nOWNER_IDS= # Bot sahibi ID'leri (Birden fazlaysa virgülle ayırın, boşluk bırakmayın)\r\nMOD_ROLE_IDS= # Yönetici rollerinin ID'leri (Birden fazlaysa virgülle ayırın, boşluk bırakmayın)\r\n\r\n# --------------------------------- #\r\n#        İSTATİSTİK AYARLARI         #\r\n# --------------------------------- #\r\n\r\nSTAT_ACTIVE=1 # İstatistik sayımını aktif etmek için 1, pasif etmek için 0 yapın\r\nGUILD_ID= # Botun çalışacağı sunucunun ID'si\r\nVOICE_CHANNEL_ID= # Botun sürekli kalacağı ses kanalının ID'si (İsteğe bağlı)\r\n```\r\n\r\n\u003e 📃 Değişkenlerin açıklamaları ve nasıl alınacakları aşağıda belirtilmiştir.\r\n\r\n---\r\n\r\n### 🔑 Gerekli ID ve Token'lar Nasıl Alınır?\r\n\r\n-   **DISCORD_TOKEN:**\r\n    1.  [Discord Developer Portal](https://discord.com/developers/applications)'a gidin.\r\n    2.  \"New Application\" diyerek yeni bir bot oluşturun.\r\n    3.  \"Bot\" sekmesine gelin ve \"Reset Token\" butonuna tıklayarak token'ınızı alın. **Bu token'ı kimseyle paylaşmayın!**\r\n    4.  **Privileged Gateway Intents** kısmından `MESSAGE CONTENT INTENT` ve `SERVER MEMBERS INTENT` seçeneklerini aktif edin.\r\n\r\n-   **MONGO_URI:**\r\n    1.  [MongoDB Atlas](https://www.mongodb.com/cloud/atlas)'a kaydolun ve ücretsiz bir cluster oluşturun.\r\n    2.  \"Database Access\" bölümünden bir kullanıcı adı ve şifre oluşturun.\r\n    3.  \"Network Access\" bölümünden `0.0.0.0/0` (her yerden erişim) IP adresini ekleyin.\r\n    4.  \"Database\" sekmesinden \"Connect\" \u003e \"Drivers\" seçeneğine tıklayın ve size verilen bağlantı linkini kopyalayın. Şifre kısmını kendi belirlediğiniz şifre ile güncelleyin.\r\n\r\n-   **Diğer ID'ler (Sunucu, Kanal, Rol):**\r\n    1.  Discord ayarlarından \"Gelişmiş\" sekmesine girin ve \"Geliştirici Modu\"nu aktif edin.\r\n    2.  ID'sini almak istediğiniz sunucuya, kanala veya role sağ tıklayıp \"ID'yi Kopyala\" seçeneğini kullanın.\r\n\r\n---\r\n\r\n## ⚙️ Botu Çalıştırma\r\n\r\n### Windows\r\nTerminali açıp aşağıdaki komutu yazın:\r\n```bash\r\nnode index.js\r\n```\r\nVeya, `start.bat` dosyasına çift tıklayarak botu kolayca başlatabilirsiniz. Bu dosya, bot çöktüğünde otomatik olarak yeniden başlatacaktır.\r\n\r\n### Linux (PM2 ile Önerilir)\r\nPM2, botunuzun sürekli olarak online kalmasını ve kolayca yönetilmesini sağlar.\r\n```bash\r\nnpm i -g pm2\r\npm2 start index.js --name StatBot\r\n```\r\nLogları (kayıtları) görmek için:\r\n```bash\r\npm2 logs StatBot\r\n```\r\n\r\n\u003e ✅ `.env` dosyasındaki tüm gerekli alanlar doldurulmadan bot başlamayacaktır.\r\n\r\n---\r\n\r\n## 📄 Komut Listesi\r\n\r\n| Komut | Alternatifler | Açıklama | Yetki |\r\n| :---- | :------------ | :------- | :---- |\r\n| `!topstat` | `top` | Genel ses ve mesaj istatistiklerini gösterir. | Herkes |\r\n| `!topüye` | `topmembers` | En çok mesaj atan ve seste kalan üyeleri gösterir. | Herkes |\r\n| `!mesaj` | `m`, `message` | Sunucudaki genel mesaj istatistiklerini gösterir. | Herkes |\r\n| `!ses` | `s`, `voice` | Sunucudaki genel ses istatistiklerini gösterir. | Herkes |\r\n| `!ben` | `me`, `user` | Kendi veya belirtilen bir üyenin istatistiklerini gösterir. | Herkes |\r\n| `!kanal` | `channel` | Belirtilen veya bulunulan kanalın istatistiklerini gösterir. | Herkes |\r\n| `!mesajliste`| `ml`, `msglist`| Sunucudaki tüm üyelerin mesaj sıralamasını gösterir. | Herkes |\r\n| `!sesliste` | `sl`, `voicelist`| Sunucudaki tüm üyelerin ses sıralamasını gösterir. | Herkes |\r\n| `!mesajkliste`|`mkl`, `msgclist`| Sunucudaki tüm kanalların mesaj sıralamasını gösterir. | Herkes |\r\n| `!seskliste`|`skl`, `voiceclist`| Sunucudaki tüm kanalların ses sıralamasını gösterir. | Herkes |\r\n| `!karaliste`| `blacklist` | Belirtilen kullanıcıyı istatistik takibinden çıkarır/ekler. | Admin |\r\n| `!yardım` | `help`, `komutlar`| Tüm komutları içeren bir yardım menüsü gösterir. | Admin |\r\n| `!reload` | `r`, `yenile` | Bot komutlarını ve olaylarını yeniden yükler. | Sahip |\r\n\r\n---\r\n\r\n## 🌟 Final Notu\r\n\r\nBu bot ile sunucunuzun aktivitesini sayılara dökebilir ve topluluğunuzu daha iyi anlayabilirsiniz. Kod yapısı açık, geliştirilebilir ve modülerdir. Artık kontrol sizde! ✨\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpordarman%2Fultimate-stat-bot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpordarman%2Fultimate-stat-bot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpordarman%2Fultimate-stat-bot/lists"}