Discord kullanıcı ve sunucularını ID üzerinden çözüp; avatar, banner, rozetler, durum mesajı ve sunucu widget verilerini tek sayfada gösteren modern lookup uygulaması.
⚡ Gerçek zamanlı Discord REST / Widget API entegrasyonu
📚 Kalıcı arama geçmişi + Keşfet (Discovery) listesi
🌓 Dark mode + DarkReader ile otomatik tema filtresi
- 🔎 Kullanıcı ID Arama: Avatar, banner, global username, rozetler ve aktivite bilgileri.
- 🏷️ Sunucu Çözümleme: Widget/i davet verileriyle üye sayıları, doğrulama seviyeleri ve açıklamalar.
- 🗂️ Keşfet (kesfet.tsx): Widget’ı açık sunucular kalıcı olarak
data/discovery-guilds.jsondosyasında tutulur ve UI’de kartlar halinde listelenir. - 📜 Arama Geçmişi:
historyStore.tsile son bakılan kullanıcı/sunucu kayıtları gösterilir. - 🌙 Tema Senkronizasyonu: Light/dark tercihi LocalStorage’da saklanır, DarkReader karanlık modda otomatik aktif olur.
- 🛡️ Hata Yönetimi: Discord ve japi.rest istekleri için anlamlı mesajlar, rate-limit kontrollü istek akışı.
| Teknoloji | Açıklama |
|---|---|
| Next.js 14 (Pages Router) | API routes + React bileşenleri aynı projede |
| React 18 & TypeScript | Tip güvenli modern UI |
| Tailwind CSS | Tasarım sistemi ve hızlı stiller |
| Axios | Discord REST çağrıları |
| DarkReader | Karanlık tema için dinamik filtre |
| Discord REST & Widget API | Kullanıcı ve sunucu verileri |
dc-lookup/
├─ data/
│ └─ discovery-guilds.json # Keşfet listesi kalıcı deposu
├─ public/
│ └─ png/boosts/... # Statik varlıklar
├─ src/
│ ├─ pages/
│ │ ├─ index.tsx # Ana lookup arayüzü
│ │ ├─ history.tsx # Geçmiş sayfası
│ │ ├─ kesfet.tsx # Sunucu keşfet sayfası
│ │ └─ api/
│ │ ├─ user/[id].tsx # Kullanıcı/sunucu lookup API’si
│ │ └─ discovery.ts # Keşfet verilerini dönen API
│ └─ styles/globals.css # Temel stiller
├─ discoveryStore.ts # Keşfet depolama yardımcıları
├─ historyStore.ts # Arama geçmişi yardımı
├─ project.config.ts # Discord bot token yükleyicisi
├─ tailwind.config.ts
├─ next.config.mjs
└─ README.mdgit clone https://github.com/TMBilalTM/dc-lookup.git
cd dc-lookupnpm installKök dizinde bir .env dosyası oluşturup bot token’ınızı girin:
DISCORD_BOT_TOKEN=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXBu değer project.config.ts üzerinden otomatik okunur; tanımlı değilse uygulama çalışırken hata verir.
BOT_TOKENdeğişkeni de geriye dönük uyumluluk için desteklenir ancakDISCORD_BOT_TOKENönerilir.
npm run devTarayıcı: http://localhost:3000
.envvarsayılan olarak.gitignoreiçinde; token’ınızı repo dışına taşımayın.- Keşfet ve geçmiş verileri
data/dizinindeki JSON dosyalarında tutulur. Ortamınız yazma izinlerine sahip değilse uygulama otomatik olarak geçici (/tmp) dizine düşer ve veriler kalıcı olmaz. - Dark mode’da DarkReader tüm sitenin renk paletini filtreler; özel durumlar için
_app.tsxiçindekidarkreader.enableayarlarını değiştirebilirsiniz.
- Keşfet kartlarında sunucu badge/bot ikonlarını gösterme
- Lookup sonuçlarını export edebilme
- Rate limit ve hata metriklerini UI’da vurgulama
- Mobil deneyim için ek düzenlemeler
- Forkla
- Branch aç
git checkout -b feature/yeni-ozellik
- Commit et
git commit -m "feat: yeni özellik eklendi" - Push et
- PR aç
Bu proje MIT Lisansı ile lisanslanmıştır.
Detay: LICENSE
@TMBilalTM
GitHub: https://github.com/TMBilalTM
{ "scripts": { "dev": "next dev", "build": "next build", "start": "next start", "lint": "next lint" } }