Geliştirici Kodlarını Paylaşmak ve Keşfetmek İçin Nihai Merkez
DevYork, geliştiricilerin kod parçacıklarını paylaşabileceği, hazır sistemleri keşfedebileceği ve geliştirme iş akışlarını iyileştirebileceği modern, topluluk odaklı bir platformdur. Basit scriptlerden karmaşık elmas seviye modüllere kadar, DevYork hepsini düzenler! ✨
Hiç şunlarla mücadele ettiniz mi:
- 🗑️ Faydalı kod parçacıklarını rastgele klasörlerde kaybetmek?
- 🤷♂️ Çalışan bir discord.js komutu veya python scripti için saatlerce arama yapmak?
- 📉 Güncel olmayan veya hatalarla dolu kodları bulmak?
- 🤝 Çalışmanızı paylaşmak isteyip de uygun bir platform bulamamak?
DevYork bunu çözer! Kodları kalite ve kullanım amacına göre kategorize eden, hata bildirimi yoluyla topluluk denetimini sağlayan ve geliştirici kaynaklarına sorunsuz göz atma ve yönetim için şık bir arayüz sunan yapılandırılmış bir ekosistemdir.
Not: İnceleyenlerin tüm özellikleri sorunsuz keşfedebilmesi için bu açık demoda Kimlik Doğrulama (Authentication) kasıtlı olarak devre dışı bırakılmıştır.
- 💎 Seviyeli İçerik Sistemi: Kodlar, karmaşıklık ve değere göre Normal, Altın ve Elmas seviyelerine ayrılır.
- 🏗️ Hazır Sistemler: Tamamlanmış, tak-çalıştır sistemler için özel bölüm (örn. Auth sistemleri, Ticket botları).
- 🔒 Discord Kimlik Doğrulama: Kimlik doğrulamak ve avatarları senkronize etmek için Discord OAuth2 kullanan güvenli giriş.
- ⭐ Oylama ve Geri Bildirim: 5 yıldızlı derecelendirme sistemi ile topluluk odaklı kalite kontrolü.
- 🎨 Modern UI/UX: Maksimum estetik çekicilik için Tailwind CSS ile oluşturulmuş, karanlık temalı, glassmorphism arayüz.
⚠️ Gelişmiş Hata Bildirimi: Kullanıcılar bozuk kodları belirli nedenlerle bildirebilir. Bir kullanıcı daha önce bir hata bildirdiyse, sistem mükerrer kayıtları engeller.- 🚫 Otomatik Uyarılar: Onaylanmış hata bildirimlerine sahip kodlar, kullanıcıları uyarmak için belirgin bir uyarı banner'ı görüntüler.
- ⚙️ Admin Paneli: Kullanıcıları yönetmek, kodları onaylamak/silmek ve platform etkinliğini denetlemek için kapsamlı yönetici paneli.
- 🔎 Akıllı Filtreler: Kodları Dile (JS, TS, Python vb.), Modüle (discord.js, mongoose vb.), Puana ve Hata Durumuna göre filtreleyin.
- 📄 Kod Detay Görünümü: Sözdizimi vurgulama (PrismJS) ile kaynak kodunu görüntüleyin, panoya kopyalayın veya ZIP olarak indirin.
- 📱 Responsive: Masaüstü, Tablet ve Mobil için tamamen optimize edilmiştir.
- Çatı: Nuxt 3 (Vue 3)
- Stil: Tailwind CSS
- İkonlar: FontAwesome & Özel SVG
- Durum Yönetimi: Pinia
- Editör: Monaco Editor / PrismJS entegrasyonu
- Bildirimler: SweetAlert2 & Vue3-Toastify
- NestJS (Modüler mimari)
- MongoDB + Mongoose
- Passport.js (Discord OAuth2)
- Express Sessions
- RESTful API tasarımı
DevYork başlangıçta tam bir Nuxt SSR uygulaması olarak prototiplenmişti. Proje geliştikçe, backend şu hedefleri iyileştirmek için bağımsız bir NestJS API'sine tamamen ayrıldı:
- Ölçeklenebilirlik
- Kod bakım kolaylığı
- Net frontend / backend sorumluluk ayrımı
- NestJS: Modüler mimarisi ve uzun vadeli ölçeklenebilirliği için seçildi.
- REST API: Basitlik ve öngörülebilir veri akışı için GraphQL yerine tercih edildi.
- MongoDB + Mongoose: Esnek şema tasarımı için kullanıldı.
- Session-tabanlı kimlik doğrulama: Discord OAuth2 entegrasyonu için tercih edildi.
Bu açık demoda kimlik doğrulama ve yetkilendirme kontrolleri kasıtlı olarak gevşetilmiştir.
Amaç, inceleyenlerin ve işe alım uzmanlarının şunları yapabilmesini sağlamaktır:
- Tüm sayfaları keşfetme
- UI/UX ve sistem akışlarını inceleme
- Hesap kurulumu yapmadan temel özellikleri test etme
Canlı (Production) bir ortamda, rol tabanlı erişim kontrolü (RBAC) ve rota korumaları (route guards) tam olarak desteklenmektedir.
DevYork'un tüm geliştirme yaşam döngüsünden ben sorumluydum:
- UI/UX tasarımı ve frontend uygulaması
- Backend mimarisi ve API geliştirme
- Veritabanı şema tasarımı
- Discord OAuth2 kimlik doğrulama akışı
- Admin paneli ve moderasyon araçları
- Hata raporlama ve doğrulama mantığı
- Dağıtıma hazır ortam yapılandırması
Bu proje, bir ürünü fikirden çalışan bir platforma dönüştürme yeteneğimi yansıtmaktadır.
- Node.js 18+
- Yarn (önerilen) veya npm
- MongoDB (Yerel veya Atlas URL)
- Discord Developer Application (Client ID & Secret)
git clone https://github.com/alperr/devyork-website.git
cd devyork-websitecd backend
yarn installbackend/ dizininde bir .env dosyası oluşturun:
MONGO_URL=mongodb://localhost:27017/devyork
PORT=3001
SESSION_SECRET=super_secret_key_change_me
DISCORD_CLIENT_ID=your_discord_client_id
DISCORD_CLIENT_SECRET=your_discord_client_secret
DISCORD_CALLBACK_URL=http://localhost:3000/api/auth/callbackSunucuyu başlatın:
yarn start:devYeni bir terminal açın:
cd frontend
yarn installfrontend/ dizininde bir .env dosyası oluşturun (isteğe bağlı, genellikle varsayılanlar çalışır):
BACKEND_URL=http://localhost:3001/apiİstemciyi başlatın:
yarn devUygulamayı görüntülemek için http://localhost:3000 adresini ziyaret edin 🚀
- Discord ile giriş yapın.
- "Kod Paylaş" menüsüne gidin.
- Başlık, Açıklama ve Seviye/Kategori alanlarını doldurun.
- Kodunuzu editöre yapıştırın.
- Paylaş'a tıklayın!
Bozuk bir kod bulursanız:
- Kod Detay sayfasına gidin.
- Uyarı İkonu (
⚠️ ) butonuna tıklayın. - Nedeni seçin (örn. "Çalışmıyor", "Spam").
- Detayları girin ve gönderin.
- Not: Daha önce bildirdiyseniz, sistem size hatırlatacaktır!
- Backend tarafında kullanıcı ID'niz yetkilendirilmişse
/dashboardüzerinden erişin. - Kullanıcı Yönetimi: Kayıtlı tüm kullanıcıları görüntüleyin, katılma tarihine göre sıralayın.
- Kod Yönetimi: Platformdaki herhangi bir kodu düzenleyin veya silin.
devyork/
├── backend/ # NestJS API
│ ├── src/
│ │ ├── auth/ # Authentication Logic
│ │ ├── codes/ # Codes CRUD & Logic
│ │ ├── schemas/ # MongoDB Schemas
│ │ └── main.ts # Entry Point
├── frontend/ # Nuxt 3 Client
│ ├── components/ # Reusable Vue Components
│ ├── pages/ # Route Views
│ ├── public/ # Static Assets
│ └── nuxt.config.ts # Nuxt Configuration
└── README.md # Dokümantasyon
DISCORD_CLIENT_IDveSECRETbilgilerinin doğru olduğundan emin olun.- Discord Developer Portal'da yönlendirmelere (redirects)
http://localhost:3000/api/auth/callbackadresinin eklendiğini kontrol edin.
- Yerel MongoDB servisinizin çalıştığını kontrol edin (
mongod). .envdosyasındakiMONGO_URL'i doğrulayın.
yarn devkomutunun Tailwind CSS'i derlemeyi bitirdiğinden emin olun..nuxtklasörünü silip yeniden başlatmayı deneyin.
Katkılarınızı bekliyoruz! Detaylar için lütfen CONTRIBUTING.md dosyasına bakın.
- 🍴 Forklayın
- 🌿 Özellik dalınızı oluşturun (
git checkout -b feature/harika-ozellik) - 💾 Değişikliklerinizi commit'leyin (
git commit -m 'feat: Harika özellik ekle') - 📤 Dalınıza push'layın (
git push origin feature/harika-ozellik) - 🔄 Bir Pull Request oluşturun
Bu proje MIT Lisansı ile lisanslanmıştır - detaylar için LICENSE dosyasına bakın.
- Discord: Topluluğumuza Katılın
- Web Sitesi: devyork.com
Theark tarafından ❤️ ile yapıldı İyi Kodlamalar! 🚀