Firestore Database পরিচিতি
🔥 React Native (TypeScript) – Firestore Database পরিচিতি
আধুনিক মোবাইল অ্যাপে Real-time ডেটা, Cloud Storage এবং Scalable Database খুবই গুরুত্বপূর্ণ। এই কাজের জন্য সবচেয়ে জনপ্রিয় সমাধান হলো Firebase Firestore Database।
📌 Firestore Database কী?
Cloud Firestore হলো Google Firebase-এর একটি NoSQL, cloud-based, real-time database যেখানে ডেটা Document এবং Collection আকারে সংরক্ষণ করা হয়।
- Real-time data sync
- Offline support
- Scalable & secure
- React Native এর সাথে সহজ integration
📌 Firestore Database Structure
Firestore ডেটা সংরক্ষণ করে নিচের স্ট্রাকচারে:
Collection (users)
└── Document (userId)
├── name: "Rahul"
├── email: "rahul@gmail.com"
└── age: 22
📌 React Native (TypeScript) + Firestore কেন ব্যবহার করবো?
- Type-safe development (TypeScript)
- Automatic real-time update
- No backend server required
- Authentication এর সাথে সহজে যুক্ত করা যায়
📌 Firestore Setup (React Native – TypeScript)
প্রথমে প্রয়োজনীয় প্যাকেজ install করতে হবে:
npm install @react-native-firebase/app @react-native-firebase/firestore
📌 Firestore Configuration (File-based Structure)
firebase.ts ফাইল তৈরি করুন:
import firestore from '@react-native-firebase/firestore';
export const db = firestore();
📌 Firestore এ Data Add করা (TypeScript)
interface User {
name: string;
email: string;
age: number;
}
await db.collection('users').add({
name: 'Amit',
email: 'amit@gmail.com',
age: 25,
} as User);
📤 Output:
Firestore Console → users collection এ একটি নতুন document তৈরি হবে।
📌 Firestore থেকে Data Read করা
const snapshot = await db.collection('users').get();
snapshot.docs.forEach(doc => {
console.log(doc.id, doc.data());
});
📤 Output:
Console এ users collection এর সব ডেটা দেখাবে।
📌 Real-time Listener (Live Update)
db.collection('users').onSnapshot(snapshot => {
const users = snapshot.docs.map(doc => ({
id: doc.id,
...doc.data(),
}));
console.log(users);
});
📌 Firestore ব্যবহারের Best Practices
- ছোট document রাখুন
- Proper security rules ব্যবহার করুন
- Indexing enable করুন
- TypeScript interface ব্যবহার করুন
✅ সংক্ষেপে
- Firestore হলো real-time NoSQL database
- React Native + TypeScript এর সাথে perfect match
- File-based structure code কে clean রাখে
- Backend ছাড়াই scalable app বানানো সম্ভব
👼 Quiz
/