JavaScript DOM manipülasyonu ve modern web teknolojilerini öğrenmek için geliştirilmiş, minimalist tasarıma sahip bir todo list uygulaması. Canlı demo linki: https://engincan-todo-app.netlify.app/
-
Modern ve Minimalist Tasarım
- Özel renk paleti: #A59D84, #C1BAA1, #D7D3BF, #ECEBDE (https://colorhunt.co/)
- Yuvarlatılmış köşeler ve yumuşak gölgeler
- Responsive tasarım (mobil uyumlu)
-
Görev Yönetimi
- Görev ekleme ve silme
- Görevleri tamamlandı olarak işaretleme
- Toplu görev silme özelliği
-
Filtreleme Sistemi
- Tüm görevleri görüntüleme
- Sadece tamamlanmış görevleri görüntüleme
- Sadece tamamlanmamış görevleri görüntüleme
-
Motivasyon Sistemi
- Görev eklerken motivasyon mesajları
- Görev tamamlandığında başarı mesajları
- Boş liste durumunda cesaretlendirici mesajlar
-
Veri Saklama
- LocalStorage ile görevleri otomatik kaydetme
- Sayfa yenilendiğinde görevleri koruma
querySelector
vequerySelectorAll
ile element seçimicreateElement
ile dinamik element oluşturmaappendChild
veremove
ile DOM yönetimi- Event listener'lar (
addEventListener
) - Class manipülasyonu (
classList.add
,classList.remove
,classList.toggle
) - Attribute yönetimi (
setAttribute
,getAttribute
,hasAttribute
) - Element içerik yönetimi (
textContent
,innerHTML
)
- Form submit eventi (
submit
) - Tıklama eventi (
click
) - Klavye eventleri (
keydown
) - Event delegation pattern kullanımı
- Event nesnesi özellikleri (
preventDefault
,target
)
- Arrow functions
- Template literals
- Destructuring assignment
- Spread operator
- Local storage API kullanımı
- setTimeout ile asenkron işlemler
- Modern array metodları (
forEach
,map
,filter
)
- LocalStorage API (
setItem
,getItem
,removeItem
) - JSON veri formatı (
JSON.stringify
,JSON.parse
) - Veri modeli oluşturma ve yönetimi
- State management prensipleri
- CSS transitions
- Transform özellikleri
- Opacity animasyonları
- Smooth scrolling
-
Projeyi klonlayın:
git clone https://github.com/engincanaraz/todo-list-app.git
-
Proje dizinine gidin:
cd todo-list-app
-
index.html
dosyasını bir web tarayıcısında açın.
-
Görev Ekleme
- "Yeni bir hedef belirle..." alanına görev metnini yazın
- Enter tuşuna basın veya "+" butonuna tıklayın
-
Görev Tamamlama
- Görevin yanındaki checkbox'ı işaretleyin
- Tamamlanan görevler otomatik olarak işaretlenir
-
Görev Silme
- Her görevin sağında bulunan çöp kutusu ikonuna tıklayın
- Tüm görevleri silmek için "Temiz Bir Başlangıç" butonunu kullanın
-
Görevleri Filtreleme
- "Tümü" butonu: Bütün görevleri gösterir
- "Tamamlanmış" butonu: Sadece tamamlanan görevleri gösterir
- "Tamamlanmamış" butonu: Sadece tamamlanmayan görevleri gösterir
LinkedIn: https://www.linkedin.com/in/engincanaraz E-posta: [email protected]
- MDN Web Docs - Kapsamlı JavaScript dokümantasyonu için
- Bootstrap - Harika UI framework'ü için
- Font Awesome - Güzel ikonlar için
- Google Fonts - Typography için