Skip to content

Commit 25b3042

Browse files
committed
Update firebase-tutorial with firebase emulator
1 parent 072745a commit 25b3042

File tree

6 files changed

+32
-8
lines changed

6 files changed

+32
-8
lines changed

Diff for: firebase-tutorial/.eslintcache

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
[{"/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/App.js":"1","/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/reportWebVitals.js":"2","/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/index.js":"3","/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/Todos.jsx":"4","/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/firebase.js":"5"},{"size":508,"mtime":1611303381236,"results":"6","hashOfConfig":"7"},{"size":362,"mtime":1611236261994,"results":"8","hashOfConfig":"7"},{"size":522,"mtime":1611260932379,"results":"9","hashOfConfig":"7"},{"size":1836,"mtime":1611305852409,"results":"10","hashOfConfig":"7"},{"size":305,"mtime":1611307465248,"results":"11","hashOfConfig":"7"},{"filePath":"12","messages":"13","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"ynmwzi",{"filePath":"14","messages":"15","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"16","messages":"17","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"18","messages":"19","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"20","messages":"21","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/App.js",[],"/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/reportWebVitals.js",[],"/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/index.js",[],"/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/Todos.jsx",[],"/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/firebase.js",[]]
1+
[{"/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/App.js":"1","/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/reportWebVitals.js":"2","/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/index.js":"3","/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/Todos.jsx":"4","/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/firebase.js":"5"},{"size":508,"mtime":1611303381236,"results":"6","hashOfConfig":"7"},{"size":362,"mtime":1611236261994,"results":"8","hashOfConfig":"7"},{"size":522,"mtime":1611260932379,"results":"9","hashOfConfig":"7"},{"size":1827,"mtime":1611680570166,"results":"10","hashOfConfig":"7"},{"size":780,"mtime":1611762035615,"results":"11","hashOfConfig":"7"},{"filePath":"12","messages":"13","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"ynmwzi",{"filePath":"14","messages":"15","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"16","messages":"17","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"18","messages":"19","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"20","messages":"21","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/App.js",[],"/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/reportWebVitals.js",[],"/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/index.js",[],"/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/Todos.jsx",[],"/Users/codethred/development/workspace/youtube-tutorials/firebase-tutorial/src/firebase.js",[]]

Diff for: firebase-tutorial/.gitignore

+2
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,5 @@
2121
npm-debug.log*
2222
yarn-debug.log*
2323
yarn-error.log*
24+
firestore-debug.log*
25+
ui-debug.log*

Diff for: firebase-tutorial/README.md

+5-2
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,12 @@ Tutorial on how to use auth, firestore and functions by building a simple todo a
44

55
Useful Links:
66

7-
YouTube video: https://youtu.be/cuvP4h6O2x8
7+
YouTube video (Firebase Tutorial): https://youtu.be/cuvP4h6O2x8
8+
9+
YouTube video (Firebase Emulator Tutorial): https://youtu.be/kVaNbNEa1Zk
810

911
Firebase: https://firebase.google.com/
1012

11-
React Firebase Hooks: https://github.com/csfrequency/react-firebase-hooks
13+
Firebase Emulator: https://firebase.google.com/docs/emulator-suite
1214

15+
React Firebase Hooks: https://github.com/csfrequency/react-firebase-hooks

Diff for: firebase-tutorial/firebase.json

+14
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,19 @@
22
"firestore": {
33
"rules": "firestore.rules",
44
"indexes": "firestore.indexes.json"
5+
},
6+
"emulators": {
7+
"auth": {
8+
"port": 9099
9+
},
10+
"functions": {
11+
"port": 5001
12+
},
13+
"firestore": {
14+
"port": 8080
15+
},
16+
"ui": {
17+
"enabled": true
18+
}
519
}
620
}

Diff for: firebase-tutorial/src/Todos.jsx

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import "./App.css";
22
import { useState } from "react";
3-
import { auth, firestore, functions } from "./firebase";
4-
import firebase from "firebase";
3+
import firebase, { auth, firestore, functions } from "./firebase";
54
import { useCollectionData } from "react-firebase-hooks/firestore";
65

76
const addTodo = functions.httpsCallable("addTodo");
@@ -39,7 +38,7 @@ const Todos = () => {
3938
/>
4039
<button type="submit">Add</button>
4140
</form>
42-
{todos && todos.map((todo) => <Todo {...todo} />)}
41+
{todos && todos.map((todo) => <Todo key={todo.id} {...todo} />)}
4342
</main>
4443
</>
4544
);

Diff for: firebase-tutorial/src/firebase.js

+8-2
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,19 @@
1-
import firebase from 'firebase/app'
1+
import firebase from "firebase/app";
22

33
import "firebase/firestore";
44
import "firebase/auth";
55
import "firebase/functions";
66

7-
firebase.initializeApp({})
7+
firebase.initializeApp({});
88

99
export const auth = firebase.auth();
1010
export const firestore = firebase.firestore();
1111
export const functions = firebase.functions();
1212

13+
if (window.location.hostname.includes("localhost")) {
14+
auth.useEmulator("http://localhost:9099");
15+
firestore.useEmulator("localhost", 8080);
16+
functions.useEmulator("localhost", 5001);
17+
}
18+
1319
export default firebase;

0 commit comments

Comments
 (0)