Modern ve özelleştirilebilir bir blog platformu. Django framework'ü kullanılarak geliştirilmiş, kullanıcı dostu arayüzü ve zengin özellikleriyle öne çıkan bir web uygulaması.
- 📝 Zengin metin editörü (CKEditor) ile blog yazıları
- 👤 Kullanıcı yönetimi ve profil sistemi
- 🤖 AI destekli chatbot entegrasyonu
- 🔍 Gelişmiş arama ve öneri sistemi
- 📧 E-posta doğrulama sistemi
- 📱 Responsive tasarım
- 🔒 Güvenli oturum yönetimi
- 📸 Medya dosyası yönetimi
- 🌐 Çoklu dil desteği (Türkçe)
- 📊 Admin paneli
- Backend Framework: Django 5.2.1
- Database: SQLite3 (Geliştirme) / PostgreSQL (Üretim)
- Frontend: HTML5, CSS3, JavaScript
- Rich Text Editor: CKEditor
- AI Integration: Together AI API
- Static File Serving: WhiteNoise
- Email Service: SMTP (Gmail)
DjangoBlog/
├── Django/
│ ├── DjangoBlog/ # Ana proje dizini
│ │ ├── settings.py # Proje ayarları
│ │ ├── urls.py # Ana URL yapılandırması
│ │ └── wsgi.py # WSGI yapılandırması
│ ├── article/ # Blog yazıları uygulaması
│ ├── user/ # Kullanıcı yönetimi uygulaması
│ ├── chatbot/ # AI chatbot uygulaması
│ ├── templates/ # HTML şablonları
│ ├── static/ # Statik dosyalar (CSS, JS, images)
│ └── media/ # Kullanıcı yüklemeleri
-
Gereksinimler
- Python 3.8 veya üzeri
- pip (Python paket yöneticisi)
- Git
-
Projeyi Klonlama
git clone [proje-url] cd DjangoBlog -
Sanal Ortam Oluşturma ve Aktifleştirme
python -m venv venv # Windows için: venv\Scripts\activate # Linux/Mac için: source venv/bin/activate
-
Bağımlılıkları Yükleme
pip install -r requirements.txt
-
Çevre Değişkenlerini Ayarlama
.envdosyası oluşturun ve aşağıdaki değişkenleri ekleyin:SECRET_KEY=your-secret-key DEBUG=True EMAIL_HOST=smtp.gmail.com EMAIL_PORT=587 EMAIL_HOST_USER=your-email@gmail.com EMAIL_HOST_PASSWORD=your-app-password TOGETHER_API_KEY=your-together-api-key -
Veritabanı Migrasyonları
python manage.py makemigrations python manage.py migrate
-
Süper Kullanıcı Oluşturma
python manage.py createsuperuser
-
Statik Dosyaları Toplama
python manage.py collectstatic
-
Sunucuyu Başlatma
python manage.py runserver
-
IDE Önerileri
- Visual Studio Code
- PyCharm
- Sublime Text
-
Önerilen VS Code Eklentileri
- Python
- Django
- Python Docstring Generator
- Python Test Explorer
- GitLens
-
Geliştirme Araçları
- Git
- Postman (API testleri için)
- SQLite Browser (veritabanı yönetimi için)
# Form işlemleri için
pip install django-widget-tweaks
# Zengin metin editörü için
pip install django-ckeditor
# Dosya temizleme için
pip install django-cleanup
# Statik dosya sunumu için
pip install whitenoise
# Çevre değişkenleri için
pip install python-dotenv
# AI entegrasyonu için
pip install together-
Üretim Ortamı Ayarları
DEBUG = Falseyapın- Güvenli bir
SECRET_KEYkullanın ALLOWED_HOSTSlistesini güncelleyin- SSL sertifikası kullanın
CSRF_COOKIE_SECUREveSESSION_COOKIE_SECURETrue yapın
-
E-posta Güvenliği
- Gmail için "App Password" kullanın
- SMTP ayarlarını güvenli bir şekilde yapılandırın
- Fork'layın
- Feature branch oluşturun (
git checkout -b feature/amazing-feature) - Değişikliklerinizi commit edin (
git commit -m 'Add some amazing feature') - Branch'inizi push edin (
git push origin feature/amazing-feature) - Pull Request oluşturun
Bu proje MIT lisansı altında lisanslanmıştır. Detaylar için LICENSE dosyasına bakın.
Proje Sahibi - https://www.linkedin.com/in/erkanturgut1205
Proje Linki: https://github.com/Erkan3034/DjangoBlog