Code Monkey home page Code Monkey logo

fb_firestore's Introduction

Buy Me A Coffee Donate

fb_firestore

Flutter Web, iOS and Android Cloud Firestore Plugin.

This package is now deprecated and was originally created to add firebase on the desktop and web. You can now use the FlutterFire packages to do anything this plugin could.

Getting Started

For Auth Use: https://pub.dev/packages/fb_auth

Follow Installation Instructions for Web: https://pub.dev/packages/firebase

Update /web/index.html in the body tag.

<!-- The core Firebase JS SDK is always required and must be listed first -->
  <script src="https://www.gstatic.com/firebasejs/6.3.3/firebase-app.js"></script>

  <!-- TODO: Add SDKs for Firebase products that you want to use
      https://firebase.google.com/docs/web/setup#config-web-app -->
  <script src="https://www.gstatic.com/firebasejs//6.3.3/firebase-auth.js"></script>
  <script src="https://www.gstatic.com/firebasejs/6.3.3/firebase-firestore.js"></script>
  <script src="https://www.gstatic.com/firebasejs/6.3.3/firebase-storage.js"></script>
  <script src="https://www.gstatic.com/firebasejs/6.3.3/firebase-functions.js"></script>

  <script>
    // Your web app's Firebase configuration
    var firebaseConfig = {
      apiKey: "API_KEY",
      authDomain: "AUTH_DOMAIN",
      databaseURL: "DATABASE_URL",
      projectId: "PROJECT_ID",
      storageBucket: "STORAGE_BUCKET",
      messagingSenderId: "MESSAGING_SENDER_ID",
      appId: "APP_ID"
    };
    // Initialize Firebase
    firebase.initializeApp(firebaseConfig);
  </script>

Follow Installation Instructions for Mobile: https://pub.dev/packages/cloud_firestore

  • Update ios/Runner and add the GoogleService-Info.plist downloaded from firebase

  • Update android/app and add the google-services.json downloaded from firebase

  • Update android/build.gradle and update the classpath:

    classpath 'com.google.gms:google-services:4.2.0'

API

Get a list from a collection:

FbFirestore.getDocs('users');

Get a doc from a collection:

FbFirestore.getDoc('users/${userId}');

Edit doc in a collection: (id required)

FbFirestore.editDoc('users/${userId}', {
    "name" : "Flutter"
    },
    update: true // Update Only Specific Fields If Doc Exists
);

Add a new doc to a collection:

FbFirestore.addDoc('users',{
    "name" : "Flutter"
});

Delete a doc from a collection:

FbFirestore.deleteDoc('users/${userId}');

fb_firestore's People

Contributors

rodydavis avatar

Stargazers

 avatar Hendrix Tavarez avatar Kelly Patrick  avatar Jean Paul Mosquera avatar John Rowan avatar Ulrich Diedrichsen avatar Siyris avatar Ianko Leite avatar Yusuke Otsuka avatar mono โ€” Masayuki Ono avatar Gabriel Rocha avatar Jeremy Whiteley avatar

Watchers

James Cloos avatar  avatar Siyris avatar

fb_firestore's Issues

MissingPluginException when doing addDoc

Full code snippet:

try {
  FbFirestore.addDoc('Trains', {
    'DepartureTime': departureTime.toString(),
    'Recurring': isRecurring,
  });
} catch (e) {
  print(e);
} finally {
  Navigator.pop(context);
}

Full stack trace:

[ERROR:c:\b\s\w\ir\cache\builder\src\flutter\lib\ui\ui_dart_state.cc(144)] Unhandled Exception: MissingPluginException(No implementation found for method DocumentReference#setData on channel plugins.flutter.io/cloud_firestore)
#0      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:319:7)
<asynchronous suspension>
#1      DocumentReference.setData (package:cloud_firestore/src/document_reference.dart:51:30)
#2      CollectionReference.add (package:cloud_firestore/src/collection_reference.dart:58:23)
<asynchronous suspension>
#3      FbFirestore.addDoc (package:fb_firestore/mobile.dart:31:39)
#4      _AsyncAwaitCompleter.start (dart:async-patch/async_patch.dart:43:6)
#5      FbFirestore.addDoc (package:fb_firestore/mobile.dart:30:23)
#6      _NewCoffeeTrainState.build.<anonymous closure> (package:drcc_coffee_train/new_coffee_train.dart:86:25)
#7      _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:701:14)
#8      _InkResponseState.build.<anonymous closure> (package:flutter/src/material/ink_well.dart:783:36)
#9      GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:182:24)
#10     TapGestureRecognizer.handleTapUp (package:flutter/src/gestures/tap.dart:486:11)
#11     BaseTapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:264:5)
#12     BaseTapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:236:7)
#13     GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:156:27)
#14     GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:222:20)
#15     GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:198:22)
#16     GestureBinding._handlePointerEvent (package:flutter/src/gestures/binding.dart:156:7)
#17     GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:102:7)
#18     GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:86:7)
#19     _rootRunUnary (dart:async/zone.dart:1136:13)
#20     _CustomZone.runUnary (dart:async/zone.dart:1029:19)
#21     _CustomZone.runUnaryGuarded (dart:async/zone.dart:931:7)
#22     _invoke1 (dart:ui/hooks.dart:273:10)
#23     _dispatchPointerDataPacket (dart:ui/hooks.dart:182:5)

When targeting Windows: MissingPluginException when doing getDocs

Launching lib\main.dart on Windows in debug mode...
Building Windows application...
Syncing files to device Windows...
flutter: AsyncSnapshot<List<FbDocumentSnapshot>>(ConnectionState.waiting, null, null)
flutter: AsyncSnapshot<List<FbDocumentSnapshot>>(ConnectionState.done, null, MissingPluginException(No implementation found for method Query#getDocuments on channel plugins.flutter.io/cloud_firestore))
flutter: AsyncSnapshot<List<FbDocumentSnapshot>>(ConnectionState.waiting, null, MissingPluginException(No implementation found for method Query#getDocuments on channel plugins.flutter.io/cloud_firestore))
flutter: AsyncSnapshot<List<FbDocumentSnapshot>>(ConnectionState.done, null, MissingPluginException(No implementation found for method Query#getDocuments on channel plugins.flutter.io/cloud_firestore))

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.