re:makeOnline
emanet-app: Flutter, API ve Deploy — 4 Haftalık Eğitim Projesi
7 Eylül 2026Online
emanet-app: Flutter, API ve Deploy — 4 Haftalık Eğitim Projesi
7 Eylül 2026 21:00— 29 Ekim 2026 21:00Online
Kayıt son tarihi: 27 Eylül 2026
Bu bir eğitim projesi. Yayına çıkma ya da kullanıcı toplama gibi bir derdimiz yok. Kayıp eşya fikrini seçtik çünkü herkesin kafasında zaten net bir karşılığı var, uzun uzun anlatmaya gerek kalmıyor. Ama işi gerçekmiş gibi yapıyoruz: neyin kapsama girdiğine karar veriyoruz, API'yi konuşup yazıya döküyoruz, kodu birbirimize review ettiriyoruz, sonunda gerçekten canlıya çıkarıyoruz.
Senaryo şu: eşyayı bulan kişi fotoğrafını çekip nerede bulduğunu yazıyor. Kaybeden kişi listeye bakıyor, kendi eşyası olduğunu düşündüğüne talep bırakıyor. Karşı taraf onaylayınca iletişim bilgileri açılıyor ve iş bitince kayıt kapanıyor.
Aslında öğrenmek istediğimiz şeyler:
Git'i düzgün kullanmak — issue aç, branch aç, PR gönder, review al, merge et. main'e doğrudan push yok, PR'lar küçük.
Herkesin kendi özelliğini baştan sona yazması. Yani aynı kişi hem ekranı, hem endpoint'i, hem tabloyu yapıyor. "Sen backend'ci ol, sen mobilci" diye bölmüyoruz.
Mobil uygulamayı kendi yazdığımız API'ye bağlamak. Bunun için önce sözleşmeyi konuşup yazmak, sonra paralel ilerlemek.
Uygulamayı bir Linux sunucuya kurmak. Docker, HTTPS, alan adı, şifreleri repoya koymadan yönetmek.
CI kurmak: her PR'da testler koşsun, merge edilince kendi kendine deploy olsun.
Ve belki en zoru: kapsamı büyütmeden işi bitirmek.
Teknik tarafta tek repo var. İçinde Flutter ile yazılmış mobil uygulama, Kotlin ve Spring Boot ile yazılmış API, bir de PostgreSQL. Hepsi Docker Compose ile paketleniyor, tek bir sunucuda Caddy arkasında çalışıyor. GitHub Actions her PR'da build alıp testleri koşuyor, main'e merge olunca da sunucuya kendisi atıyor.
Süre 4 hafta. Son hafta yeni özellik yok — sadece hata düzeltme, doküman ve demo.
Ödeme, mesajlaşma, admin paneli, bildirim, harita, mağazaya yükleme gibi şeyler kapsamda değil. Bunları bilerek dışarıda bıraktık; öğrenmek istediğimiz şeylerin önüne geçmesin diye.
Teknoloji Yığını
Flutter, Dart, Kotlin, Spring Boot, PostgreSQL, Docker