Mobil UI
Dokunmatik odaklı ekran tasarımları, gezinme kalıbı ve durum tasarımları.
Referans · 2024
React Native ile geliştirilen, kendi REST API'si üzerinden çalışan sipariş uygulaması.
Hikâye
Rakamlar gizlilik kapsamında; bu bölüm projenin hangi ihtiyaçtan doğduğunu, teknik kararların gerekçesini ve ortaya çıkan sistemi anlatıyor.
Siparişler telefonla ve mesajlaşma uygulamaları üzerinden alınıyordu: geçmiş tutulmuyor, yoğun saatlerde takip kopuyor, aktarım hataları sık yaşanıyordu. İşletmenin ihtiyacı, müşterinin kendi başına sipariş verebildiği ve durumunu anlık izleyebildiği uçtan uca bir mobil kanaldı.
Android ve iOS için iki ayrı uygulama geliştirmek yerine React Native ile tek kod tabanında ilerledim; iki platforma aynı davranış ve aynı arayüz diliyle çıkmak bu ölçekte en verimli yoldu. Uygulama ile Node.js ve Express.js üzerinde kurulan REST API, TypeScript sayesinde aynı tip sözleşmelerini paylaşıyor; ürün ve sipariş kayıtlarının esnek yapısı ise MongoDB'nin doküman modeline doğal olarak oturdu.
Redis önbellekleme ve oturum tarafında görev aldı. Sipariş durumu değiştiğinde push bildirim gönderiliyor; zayıf bağlantı ihtimaline karşı uygulamada çevrimdışı önbellekleme var. Aynı API, işletmenin kullandığı sipariş yönetim panelini de besliyor.
Sipariş akışı, iki platformda da mağaza yüklemesine hazır uygulamalarla dijitale taşındı. Müşteri kataloğu geziyor, sepetini kuruyor ve siparişinin hangi adımda olduğunu bildirimlerle takip ediyor; işletme tarafı siparişleri tek panelden yönetiyor. Kullanım ve satış verileri işletmeyle sınırlı tutulduğu için burada yer almıyor.
01 Proje Hakkında
Her projede önce mevcut durumu ve gerçek ihtiyacı anlamaya çalışıyorum. Teknik kararlar bu tanımdan sonra geliyor.
Siparişler telefon ve mesajlaşma uygulamaları üzerinden alınıyordu. Sipariş geçmişi tutulmuyor, hata oranı yüksek oluyor ve yoğun saatlerde takip zorlaşıyordu.
Müşteri tarafında React Native uygulaması, işletme tarafında ise sipariş yönetim paneli geliştirildi. İkisi de aynı REST API üzerinden çalışıyor. Sipariş durumu değiştiğinde kullanıcıya push bildirim gönderiliyor.
02 Rolüm
Bu projede üstlendiğim çalışma kalemleri. Belirtilmeyen alanlarda müşteri ekibi veya üçüncü taraflar yer aldı.
Dokunmatik odaklı ekran tasarımları, gezinme kalıbı ve durum tasarımları.
React Native ile uygulama, çevrimdışı önbellekleme ve hata durumları.
Node.js/Express ile sipariş, ürün ve kullanıcı servisleri.
Token tabanlı kimlik doğrulama, sayfalama ve tutarlı hata formatı.
Sipariş durumu değişiminde push bildirim gönderim altyapısı.
Build, imzalama ve mağaza yükleme sürecinin hazırlanması.
03 Özellikler
Projenin gündelik kullanımda en çok fark yaratan tarafları.
Kategori bazlı listeleme, arama ve görsel önbellekleme.
Sepet yönetimi, adres seçimi ve sipariş özeti ekranı.
Durum adımlarının canlı gösterimi ve geçmiş siparişler.
Token tabanlı giriş, oturum yenileme ve güvenli depolama.
Durum değişikliklerinde anlık bildirim gönderimi.
İşletme tarafı için sipariş, ürün ve kullanıcı yönetimi.
05 Sonuç
Uygulama iki platformda da yayına hazır hâle getirildi ve sipariş akışı dijitale taşındı. İşletmeye ait kullanım ve satış verileri paylaşıma kapalıdır.
Ölçülmemiş performans veya başarı yüzdesi paylaşılmaz. Doğrulanabilir veriler CMS üzerinden eklenebilir.
Bu projede kullanılan hizmet başlıkları:
Devamı
Benzer teknik yaklaşımların kullanıldığı diğer çalışmalar.
Emeyz, teknoloji, yaşam, seyahat ve daha birçok konuda içerik sunan; Türkçe, İngilizce ve Almanca yayın yapan çok dilli bir bilgi platformudur.
Flash ve HTML5 oyunlarının internet tarayıcı üzerinden oynanabildiği bir oyun platformuydu.
Mevcut bir CMS'e eklenen, LLM API'si üzerinden çalışan içerik üretim ve düzenleme modülü.