╔═══════════════════════════════════════════════════════════════════════╗ ║ 🚀 GAuth-Central Quick Start ║ ╚═══════════════════════════════════════════════════════════════════════╝ ┌─────────────────────────────────────────────────────────────────────┐ │ 🎯 HIZLI BAŞLATMA │ └─────────────────────────────────────────────────────────────────────┘ Standalone Mode (Mevcut Sunucularla): ──────────────────────────────────────── $ ./start.sh Docker Mode (Tüm Servisler): ──────────────────────────── $ ./start-with-docker.sh Manuel: ─────── $ go run main.go ┌─────────────────────────────────────────────────────────────────────┐ │ 🌐 ERİŞİM NOKTALARI │ └─────────────────────────────────────────────────────────────────────┘ API: http://localhost:8080 Swagger: http://localhost:8080/docs/index.html Frontend: http://localhost:3000 (CORS enabled) ┌─────────────────────────────────────────────────────────────────────┐ │ 🔧 MEVCUT YAPILANDIRMA │ └─────────────────────────────────────────────────────────────────────┘ PostgreSQL: 10.80.80.70:5432/go_gauth (user: cloud) Redis: 10.80.80.70:6379 (user: default) Backend: localhost:8080 ┌─────────────────────────────────────────────────────────────────────┐ │ 🧪 TEST KOMUTLARI │ └─────────────────────────────────────────────────────────────────────┘ Sağlık Kontrolü: ──────────────── $ curl http://localhost:8080/ PostgreSQL Test: ──────────────── $ PGPASSWORD=gg7678290 psql -h 10.80.80.70 -U cloud \ -d go_gauth -c "SELECT 1;" Redis Test: ─────────── $ redis-cli -h 10.80.80.70 -p 6379 -a gg7678290 \ --no-auth-warning PING Kullanıcı Kaydı: ──────────────── $ curl -X POST http://localhost:8080/v1/auth/register \ -H "Content-Type: application/json" \ -d '{"email":"test@test.com","password":"Pass123!", "user_name":"test"}' ┌─────────────────────────────────────────────────────────────────────┐ │ 📚 DOKÜMANTASYON │ └─────────────────────────────────────────────────────────────────────┘ README.md - Genel bilgiler ve özellikler SETUP.md - Detaylı kurulum rehberi (4 seçenek) DEPLOYMENT.md - Production deployment rehberi QUICK_REFERENCE.md - Komutlar ve örnekler CHANGELOG.md - Versiyon geçmişi ┌─────────────────────────────────────────────────────────────────────┐ │ ✨ ÖNE ÇIKAN ÖZELLİKLER │ └─────────────────────────────────────────────────────────────────────┘ ✅ CORS yapılandırması (localhost:3000) ✅ Redis cache & session management ✅ Rate limiting (Login: 5/min, Register: 3/5min) ✅ JWT authentication ✅ OAuth2 (Google, GitHub) ✅ Email verification ✅ PostgreSQL + GORM ✅ Swagger documentation ✅ Docker support ┌─────────────────────────────────────────────────────────────────────┐ │ 🔐 GÜVENLİK ÖZELLİKLERİ │ └─────────────────────────────────────────────────────────────────────┘ • Bcrypt password hashing • JWT token authentication • Rate limiting (brute force protection) • Token blacklist (logout) • CORS policy • Session management with Redis ┌─────────────────────────────────────────────────────────────────────┐ │ 📊 API ENDPOINTS │ └─────────────────────────────────────────────────────────────────────┘ POST /v1/auth/register - Kayıt (rate limited) POST /v1/auth/login - Giriş (rate limited) GET /v1/auth/verify-email - Email doğrulama POST /v1/auth/refresh - Token yenileme GET /v1/auth/me [Auth] - Kullanıcı bilgileri GET /v1/auth/validate [Auth] - Token doğrulama GET /v1/auth/:provider - OAuth (google/github) ┌─────────────────────────────────────────────────────────────────────┐ │ 🛠️ YARARLI KOMUTLAR │ └─────────────────────────────────────────────────────────────────────┘ Build: go build -o main . Run: ./main Dev Mode: go run main.go Swagger Update: swag init -g main.go Dependencies: go mod tidy ┌─────────────────────────────────────────────────────────────────────┐ │ 📦 SİSTEM GEREKSİNİMLERİ │ └─────────────────────────────────────────────────────────────────────┘ • Go 1.23+ • PostgreSQL 17+ erişimi (10.80.80.70:5432) • Redis 7+ erişimi (10.80.80.70:6379) • Network bağlantısı ┌─────────────────────────────────────────────────────────────────────┐ │ 🚨 SORUN GİDERME │ └─────────────────────────────────────────────────────────────────────┘ PostgreSQL bağlanamıyor: ──────────────────────── • .env dosyasında DB_URL kontrol edin • Network erişimini test edin: telnet 10.80.80.70 5432 • Kullanıcı adı/şifre doğru mu kontrol edin Redis bağlanamıyor: ────────────────── • REDIS_URL doğru mu kontrol edin • Network erişimi: telnet 10.80.80.70 6379 • Redis şifresini kontrol edin CORS hatası: ──────────── • main.go'da AllowOrigins kontrol edin • Frontend URL'i http://localhost:3000 mi? Rate limit: ─────────── • api/middlewares/rate_limit_middleware.go'da limit değerlerini artırın ┌─────────────────────────────────────────────────────────────────────┐ │ 📞 DAHA FAZLA BİLGİ │ └─────────────────────────────────────────────────────────────────────┘ Tüm detaylar için dokümantasyon dosyalarına bakın: $ cat README.md $ cat SETUP.md $ cat DEPLOYMENT.md ╔═══════════════════════════════════════════════════════════════════════╗ ║ 🎉 Başarılı çalışmalar! Sorularınız için dokümantasyona bakın. ║ ╚═══════════════════════════════════════════════════════════════════════╝