Flask ve SQLite ile geliştirilmiş modern bir eğitim yönetimi ve takip sistemi.
- Bölüm Yönetimi: Yeni bölümler ekleme, düzenleme ve silme
- Eğitim Yönetimi: Eğitim tanımlama ve yönetimi
- Seviye Tanımlama: Temel, Orta, İleri seviye kategorileri
- Eğitim-Bölüm İlişkilendirme: Çapraz birim eğitim programları
- Kullanıcı Atamaları: Personel eğitim atama sistemi
- Kayıt ve Giriş Sistemi: Güvenli kimlik doğrulama
- Rol Tabanlı Yetkilendirme: Admin, Eğitmen, Personel rolleri
- Profil Yönetimi: Kullanıcı bilgileri ve şifre değiştirme
- Eğitim Listesi: Atanan eğitimlerin görüntülenmesi
- İlerleme Takibi: Başlamadı, Devam Ediyor, Tamamlandı durumları
- Tamamlama Sistemi: Eğitim tamamlama ve sertifikasyon
- Ön Koşul Kontrolü: Eğitimler arası bağımlılık yönetimi
- Kariyer Yolu Analizi: Bölüm bazlı ilerleme görselleştirme
- Responsive Tasarım: Bootstrap 5 ile modern arayüz
- Kullanıcı Dostu: Sezgisel navigasyon ve işlemler
- Filtreleme ve Arama: Gelişmiş listeleme özellikleri
- Detaylı Sayfalar: Kapsamlı eğitim ve kullanıcı bilgileri
- Backend: Python Flask 3.0
- Veritabanı: SQLite + SQLAlchemy ORM (PostgreSQL'e geçiş için hazır)
- Frontend: Bootstrap 5 + Font Awesome
- Kimlik Doğrulama: Flask-Login
- Form Yönetimi: Flask-WTF
- Veritabanı Migrasyon: Flask-Migrate
- Python 3.8+
- pip (Python paket yöneticisi)
- SQLite (Python ile birlikte gelir)
git clone <repository-url>
cd egitim-yonetim-sistemipython -m venv venv
source venv/bin/activate # Linux/Mac
# veya
venv\Scripts\activate # Windowspip install -r requirements.txt.env dosyası oluşturun (isteğe bağlı):
SECRET_KEY=your-secret-key-here
FLASK_APP=run.py
FLASK_ENV=developmentflask init-dbpython test_db.pypython run.pyUygulama http://localhost:5000 adresinde çalışacaktır.
Sistem kurulumu sonrası otomatik olarak oluşturulan admin kullanıcısı:
- E-posta: [email protected]
- Şifre: admin123
egitim-yonetim-sistemi/
├── app/ # Ana uygulama paketi
│ ├── __init__.py # Flask uygulama fabrikası
│ ├── models.py # Veritabanı modelleri
│ ├── auth/ # Kimlik doğrulama blueprint'i
│ │ ├── __init__.py
│ │ ├── routes.py
│ │ ├── forms.py
│ │ └── templates/
│ ├── admin/ # Yönetim paneli blueprint'i
│ │ ├── __init__.py
│ │ ├── routes.py
│ │ ├── forms.py
│ │ └── templates/
│ ├── user/ # Kullanıcı işlemleri blueprint'i
│ │ ├── __init__.py
│ │ ├── routes.py
│ │ ├── forms.py
│ │ └── templates/
│ ├── main/ # Ana sayfa blueprint'i
│ │ ├── __init__.py
│ │ └── routes.py
│ └── templates/ # HTML şablonları
├── config.py # Uygulama konfigürasyonu
├── requirements.txt # Python bağımlılıkları
├── run.py # Uygulama başlatıcı
└── README.md # Proje dokümantasyonu
- Admin hesabıyla giriş yapın
- Bölümler, eğitimler ve kullanıcıları yönetin
- Eğitim-bölüm ilişkilerini tanımlayın
- Kullanıcılara eğitim atayın
- Kullanıcı hesabıyla giriş yapın
- Dashboard'da eğitim ilerlemenizi görün
- Eğitimlerinizi başlatın ve tamamlayın
- Kariyer yolunuzu takip edin
- id, isim, email, sifre_hash, rol, bolum_id
- id, ad, aciklama
- id, ad (Temel, Orta, İleri)
- id, kod, baslik, aciklama, pre_requisite_id
- id, egitim_id, bolum_id, seviye_id
- id, kullanici_id, egitim_id, durum, tamamlanma_tarihi
- Şifreler hash'lenerek saklanır (Werkzeug)
- CSRF koruması (Flask-WTF)
- Rol tabanlı erişim kontrolü
- Güvenli oturum yönetimi (Flask-Login)
- İlgili blueprint'te route ekleyin
- Form sınıfı oluşturun (gerekirse)
- HTML şablonu ekleyin
- Veritabanı modelini güncelleyin (gerekirse)
flask db migrate -m "Açıklama"
flask db upgradeBu proje MIT lisansı altında lisanslanmıştır.
- 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
Proje hakkında sorularınız için issue açabilirsiniz.