LeetCode çözümlerinizi otomatik olarak GitHub'a senkronize eden ve AI destekli README dosyaları oluşturan profesyonel masaüstü uygulaması
|
|
- Releases sayfasından
LeetCodeSyncTool.exedosyasını indirin - Dosyayı istediğiniz klasöre kopyalayın
- EXE dosyasını çift tıklayarak çalıştırın
- İlk açılışta ayarları yapılandırın
- Python 3.10+
- Windows 10/11
- LeetCode hesabı
- GitHub hesabı
- Google Gemini API anahtarı
# Projeyi klonlayın
git clone https://github.com/Erkan3034/LeetSol.git
cd LeetSol
# Bağımlılıkları yükleyin
pip install -r requirements.txt
# Uygulamayı çalıştırın
python main.py- GitHub → Settings → Developer settings → Personal access tokens
- Generate new token (classic) tıklayın
- Scopes:
repo(tam erişim) seçin - Token'ı kopyalayın ve güvenli saklayın
- LeetCode'a giriş yapın (https://leetcode.com)
- F12 tuşuna basarak Developer Tools'u açın
- Application/Storage → Cookies → https://leetcode.com
- Şu değerleri kopyalayın:
LEETCODE_SESSION(çok uzun değer)csrftoken(kısa değer)
- Google AI Studio adresine gidin
- Google hesabınızla giriş yapın
- Get API Key → Create API Key tıklayın
- Oluşturulan anahtarı kopyalayın
- Uygulamayı açın
- "Ayarları Aç" butonuna tıklayın
- Her sekmede gerekli bilgileri girin:
- GitHub: Token, username, repository
- LeetCode: Session ve CSRF token
- Gemini: API key
- Senkronizasyon: Aralık ve otomatik başlatma
- "Ayarları Kaydet" butonuna tıklayın
- "Bağlantıları Test Et" ile kontrol edin
- Otomatik: Belirlenen aralıklarla otomatik çalışır
- Manuel: "Manuel Senkronizasyon" butonuna tıklayın
- Durdurma: "Senkronizasyonu Durdur" butonu ile durdurun
Çözümleriniz şu formatta GitHub'a yüklenir:
Repository/
├── longest-substring-without-repeating-characters/
│ ├── solution.py
│ └── README.md
├── two-sum/
│ ├── solution.py
│ └── README.md
└── ...
LeetSol/
├── 📄 main.py # Ana uygulama dosyası
├── ⚙️ config_gui.py # Ayarlar arayüzü
├── 🔄 sync_logic.py # Senkronizasyon mantığı
├── 🔗 leetcode_client.py # LeetCode API istemcisi
├── 🐙 github_client.py # GitHub API istemcisi
├── 🤖 gemini_client.py # Gemini AI istemcisi
├── 🔨 build.py # EXE oluşturma script'i
├── 📋 requirements.txt # Python bağımlılıkları
├── 📝 env_template.txt # Ortam değişkenleri şablonu
├── 📖 KULLANIM_KILAVUZU.md # Detaylı kullanım kılavuzu
└── 📄 README.md # Bu dosya
- ✅ Şifreli Saklama: Tüm hassas veriler Fernet şifreleme ile korunur
- ✅ Git Ignore:
.envdosyası Git ile takip edilmez - ✅ Minimal Yetkiler: GitHub token'ında sadece gerekli yetkiler
- ✅ Yerel Veri: LeetCode cookie'leri sadece yerel olarak saklanır
- ✅ Yedekleme: Ayarlar değiştirilirken otomatik yedekleme
LeetCode Bağlantı Sorunları
Hata: "Kullanıcı giriş yapmamış" veya "Cookie'lerin süresi dolmuş"
Çözüm:
- LeetCode'a giriş yapın
- F12 → Application → Cookies → https://leetcode.com
- Yeni
LEETCODE_SESSIONvecsrftokendeğerlerini kopyalayın - Ayarlar → LeetCode sekmesinde güncelleyin
GitHub Bağlantı Sorunları
Hata: "API key not valid" veya "Repository not found"
Çözüm:
- GitHub Personal Access Token'ınızı kontrol edin
- Token'ın
repoyetkisi olduğundan emin olun - Repository adının doğru olduğunu kontrol edin
- GitHub username'inizi kontrol edin
Gemini API Sorunları
Hata: "API key not valid"
Çözüm:
- Google AI Studio'dan yeni API key alın
- API key'in aktif olduğunu kontrol edin
- Ayarlar → Gemini API sekmesinde güncelleyin
Uygulama içindeki log alanından tüm işlemleri gerçek zamanlı takip edebilirsiniz.
- Releases sayfasından yeni sürümü indirin
- Mevcut
.envdosyanızı koruyun - Yeni EXE dosyasıyla değiştirin
git pull origin main
pip install -r requirements.txt- v1.1: Sistem tepsisi bildirimleri
- v1.2: Çoklu repository desteği
- v1.3: Özel README şablonları
- v2.0: Web arayüzü
- v2.1: Çoklu dil desteği (İngilizce)
Katkılarınızı bekliyoruz!
- Fork yapın
- Feature branch oluşturun (
git checkout -b feature/amazing-feature) - Commit yapın (
git commit -m 'Add amazing feature') - Push yapın (
git push origin feature/amazing-feature) - Pull Request oluşturun
Sorunları GitHub Issues üzerinden bildirin.
Yeni özellik önerilerinizi Discussions bölümünde paylaşın.
- LinkedIn: Erkan TURGUT
- Portfolio: erkanturgut.netlify.app
- GitHub: @Erkan3034
Bu proje MIT lisansı altında lisanslanmıştır.
Bu proje size yardımcı olduysa, lütfen bir ⭐ verin!
- 📧 Email: GitHub Issues üzerinden
- 💬 Discussions: GitHub Discussions
- 🐛 Bug Reports: GitHub Issues
- 📖 Dokümantasyon: KULLANIM_KILAVUZU.md
- 👨💻 Geliştirici: Erkan TURGUT
- 🌐 Portfolio: erkanturgut.netlify.app