firestore_wrapper 1.0.3 copy "firestore_wrapper: ^1.0.3" to clipboard
firestore_wrapper: ^1.0.3 copied to clipboard

A type-safe wrapper for Cloud Firestore operations in Flutter, providing a clean and strongly-typed interface.

example/lib/main.dart

import 'package:firestore_wrapper/firestore_wrapper.dart';
import 'package:firebase_core/firebase_core.dart';
import 'package:flutter/material.dart';
import 'models/user.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return const MaterialApp(
      home: HomeScreen(),
    );
  }
}

class HomeScreen extends StatelessWidget {
  const HomeScreen({super.key});

  @override
  Widget build(BuildContext context) {
    // Create a typed collection reference
    final usersCollection = Fb.collection<User>(
      'users',
      User.fromJson,
    );

    return Scaffold(
      appBar: AppBar(
        title: const Text('Firestore Wrapper Example'),
      ),
      body: StreamBuilder<List<User>>(
        stream: usersCollection
            .query()
            .where('status', isEqualTo: 'active')
            .orderBy('points', descending: true)
            .limit(10)
            .stream(),
        builder: (context, snapshot) {
          if (snapshot.hasError) {
            return Center(child: Text('Error: ${snapshot.error}'));
          }

          if (!snapshot.hasData) {
            return const Center(child: CircularProgressIndicator());
          }

          final users = snapshot.data!;
          return ListView.builder(
            itemCount: users.length,
            itemBuilder: (context, index) {
              final user = users[index];
              return ListTile(
                title: Text(user.name),
                subtitle: Text('Points: ${user.points}'),
              );
            },
          );
        },
      ),
    );
  }
}
2
likes
160
points
75
downloads

Publisher

unverified uploader

Weekly Downloads

A type-safe wrapper for Cloud Firestore operations in Flutter, providing a clean and strongly-typed interface.

Repository (GitHub)

Documentation

API reference

License

MIT (license)

Dependencies

cloud_firestore, firebase_core, flutter

More

Packages that depend on firestore_wrapper