Modern, güvenli ve kullanıcı dostu bir kod paylaşım platformu.
Next.js 15, TypeScript ve MongoDB Atlas altyapısıyla geliştirilmiştir.
- 🔐 Discord OAuth 2.0 — Güvenli & hızlı kimlik doğrulama
- 👥 Sunucu Doğrulama — Sadece Discord sunucu üyeleri erişebilir
- 🧩 Rol Tabanlı Yetkilendirme — Belirli roller paylaşım yapabilir
- 🗂️ 4 Kategori: BDFD, AOI.JS, JavaScript, Altyapı
- 🌙 Dark Mode — Modern, göz yormayan tema
- 📱 Tam Responsive — Mobil, tablet, masaüstü uyumlu
- ⚡ Yüksek Performans — App Router ile optimize edilmiş Next.js 15 yapısı
| Kategori | Teknoloji |
|---|---|
| Framework | Next.js 15 (App Router) |
| Dil | TypeScript |
| Veritabanı | MongoDB Atlas |
| ORM | Prisma |
| Kimlik Doğrulama | NextAuth.js v5 |
| Stil | Tailwind CSS + Shadcn UI |
| İkonlar | Lucide React |
- Node.js 18+
- npm veya yarn
- MongoDB Atlas hesabı
- Discord Developer Application
- Discord Bot Token
git clone <repository-url>
cd marvelnpm install- MongoDB Atlas’ta hesap oluşturun
- Yeni bir cluster oluşturun (Free Tier yeterli)
- Database kullanıcı ve IP erişimi tanımlayın
- Connection string’i kopyalayın
- Discord Developer Portal’a gidin
- New Application → OAuth2 sekmesine girin
- Redirect URL olarak ekleyin:
http://localhost:3000/api/auth/callback/discord - Bot oluşturun ve SERVER MEMBERS INTENT & PRESENCE INTENT aktif edin
- URL Generator’dan botu sunucunuza ekleyin
Aşağıdaki değişkenleri .env dosyanıza ekleyin:
# MongoDB Atlas
DATABASE_URL="mongodb+srv://username:[email protected]/marvel"
# NextAuth
NEXTAUTH_URL="http://localhost:3000"
NEXTAUTH_SECRET="openssl rand -base64 32 ile oluşturun"
# Discord OAuth
DISCORD_CLIENT_ID="your-discord-client-id"
DISCORD_CLIENT_SECRET="your-discord-client-secret"
DISCORD_BOT_TOKEN="your-discord-bot-token"
# Discord Server Settings
DISCORD_SERVER_ID="1310956663773270066"
DISCORD_REQUIRED_ROLE_ID="963381380371345508"
DISCORD_SERVER_INVITE="https://discord.gg/gqCSn6Y7rU"💡 NEXTAUTH_SECRET oluşturmak için:
openssl rand -base64 32npx prisma generate
npx prisma db pushnpm run dev🖥️ Tarayıcıdan http://localhost:3000 adresini açın.
marvel/
├── app/
│ ├── api/
│ │ ├── auth/[...nextauth]/
│ │ └── posts/
│ ├── auth/
│ │ ├── signin/
│ │ ├── error/
│ │ └── join-server/
│ ├── category/[category]/
│ ├── post/
│ │ ├── [id]/
│ │ └── create/
│ ├── layout.tsx
│ ├── page.tsx
│ └── globals.css
├── components/
│ ├── ui/
│ ├── navbar.tsx
│ ├── footer.tsx
│ └── session-provider.tsx
├── lib/
│ ├── auth.ts
│ ├── prisma.ts
│ └── utils.ts
├── prisma/
│ └── schema.prisma
└── types/
└── next-auth.d.ts
| Kullanıcı Türü | Yetki |
|---|---|
| Tüm Discord kullanıcıları | Giriş yapabilir |
| Sunucu üyeleri | İçerikleri görüntüleyebilir |
| Belirli rol sahipleri | Kod & altyapı paylaşabilir |
📘 Rol ID & Sunucu ID öğrenmek için:
- Developer Mode → Sağ tıklayın → “ID’yi Kopyala”
- Vercel’de oturum açın
- Repo’yu import edin
- Environment Variables ekleyin
- Deploy butonuna tıklayın
Production ortamında NEXTAUTH_URL ve Discord redirect URL’ini güncelleyin:
NEXTAUTH_URL="https://your-domain.vercel.app"Discord Redirect:
https://your-domain.vercel.app/api/auth/callback/discord
- Repo’yu fork edin
- Branch açın (
git checkout -b feature/amazing-feature) - Değişiklikleri commit’leyin
- Push edin ve Pull Request açın
Bu proje MIT Lisansı ile lisanslanmıştır.
Dilediğiniz gibi kullanabilir, geliştirebilir ve paylaşabilirsiniz.
🐛 Hata veya öneri → GitHub Issues sekmesini kullanın
- Kod söz dizimi vurgulama
- Favorilere ekleme
- Yorum sistemi
- Arama & filtreleme
- Kullanıcı profilleri
- Beğeni / rating sistemi
- Admin paneli