Tarih Ağacı, Türk tarihini dijital bir platforma taşıyan, kullanıcıların tarihi olayları interaktif bir ağaç yapısı üzerinden keşfedebileceği Full-Stack bir web uygulamasıdır. İçeriklerin dinamik olarak yönetilebildiği bir yönetici (Admin) paneline sahiptir.
Tarihsel verileri statik metinler yerine algoritmik ve görsel bir hiyerarşi ile sunmak. Projemiz, veri yönetimi, MVC mimarisi ve responsif ön yüz tasarımını bir araya getiren kapsamlı bir ürün geliştirme çalışmasıdır.
Backend (Sunucu ve Veri Yönetimi):
- Node.js: Sunucu ortamı
- Express.js: Web uygulama çatısı
- MySQL: İlişkisel veritabanı (Veri modelleme ve saklama)
- EJS: Dinamik HTML sayfaları için şablon motoru
Frontend (Kullanıcı Arayüzü):
- HTML5 & CSS3: Sayfa iskeleti ve stillendirme
- JavaScript: Kullanıcı etkileşimi ve DOM manipülasyonu
- Bootstrap: Responsif (mobil uyumlu) tasarım bileşenleri
- MVC Mimarisi: Model, View ve Controller yapılarının izole edildiği temiz kod tasarımı.
- Yönetici Paneli (Admin CMS): Tarihi bilgilerin, soruların ve olayların sisteme eklenebildiği dinamik veri giriş arayüzü (
admin.ejs). - Veritabanı Entegrasyonu: SQL sorguları ile veri ekleme, okuma, güncelleme ve silme (CRUD) işlemleri.
- Dinamik Yönlendirme: Node.js arka ucu ile kesintisiz veri akışı.
server.js: Ana sunucu dosyası ve API yönlendirmeleri.models.js/db.js: Veritabanı bağlantısı ve tablo modelleri./views: Kullanıcı ve yönetici paneline ait EJS şablonları./public: Statik dosyalar (CSS, Client-Side JS, Görseller).tarih_agaci.sql: Veritabanı şema ve örnek verileri.
Bu proje geliştirme aşamasında olduğu için şu an uzak bir sunucuda (hosting) canlıda değildir. Projeyi kendi bilgisayarınızda (localhost) tam kapasiteyle ve veritabanı bağlantısıyla çalıştırmak için aşağıdaki adımları izleyebilirsiniz:
- Projeyi bilgisayarınıza klonlayın:
git clone https://github.com/feiwche/Tarih-Agaci.git - Proje dizinine girip gerekli Node.js paketlerini (bağımlılıkları) yükleyin:
npm install - Veritabanını kurun:
tarih_agaci.sqldosyasını yerel MySQL sunucunuza (örneğin XAMPP, WAMP veya MySQL Workbench üzerinden) içe aktarın (import). - Sunucuyu başlatın:
node server.js - Tarayıcınızda
http://localhost:3000adresine giderek projeyi tam donanımlı haliyle deneyimleyin.
Geliştiriciler:
İrem Kervan - Bilgisayar Mühendisliği Öğrencisi Coşkun Efe Kapancı - Bilgisayar Mühendisliği Öğrencisi Yusuf Altıparmak - Bilgisayar Mühendisliği Öğrencisi İbrahim Ethem Sevimoğlu - Bilgisayar Mühendisliği Öğrencisi