Son birkaç haftada iki Expo uygulamamı Supabase’den Firebase’e taşımaya karar verdim. Supabase kötü olduğu için değil; onu gerçekten sevdim. Ama yeni bir şey denemek ve Firebase’in React Native uygulamalarında nasıl hissettirdiğini görmek istedim. Spoiler: beklediğimden daha sorunsuzdu.
🔄 Neden geçiş yaptım?
Supabase kurulumum hem TinyRecipe (tarif ve kiler yöneticisi) hem de TinyDebt (borç takip uygulaması) için gayet iyi çalışıyordu. Ama şunları yapmak istedim:
- Firebase’in yerel SDK’ları ile denemeler yapmak
- kimlik doğrulama ve analitik kurulumunu basitleştirmek
- Firestore’un gerçek zamanlı yeteneklerini test etmek
- gelecekteki projeler için uygulamalı deneyim kazanmak
⚙️ Firebase’i Expo ile nasıl entegre ettim?
@react-native-firebase kullandım ve açıkçası çok kolaydı. Taşıma sürecinden birkaç not:
- Expo Dev Client’larla kullanabilirsiniz (bare workflow gerekmez).
- Kurulum basitti; yalnızca hem iOS hem Android için uygulama kimlik bilgilerini güncellemem gerekti.
- Firestore sorguları önceki kurulumuma kıyasla çok daha hızlı hissettirdi.
- Firebase Authentication ve Analytics çok az yapılandırma gerektirdi.
Beni en çok şaşırtan şey, Expo’nun yerel modüllerle çalışmada ne kadar gelişmiş olmasıydı; neredeyse düz React Native kullanmak gibiydi.
⚡ Öğrendiklerim
- Supabase hızlı, SQL tabanlı kurulumlar için harika; Firebase ise gerçek zamanlı güncellemeler ve çevrimdışına hazır veriler konusunda öne çıkıyor.
- Firestore’un esnek yapısı sayesinde şema taşıma çoğunlukla sorunsuz geçti.
- Firebase’i merak eden bir Expo geliştiricisiyseniz @react-native-firebase keşfetmeye değer.
📱 Uygulamalarım
🍱 TinyRecipe şurada yayında:
💰 TinyDebt şurada yayında:
💬 Toparlarken
Bu taşıma, Expo’nun ne kadar esnek hâle geldiğini bana çok iyi öğretti. Uygulamanıza en uygun araçları seçmek hiç olmadığı kadar kolay; Supabase de olsa Firebase de olsa gerçekten yanlış bir seçim yapamazsınız.
