Firestore realtime updates or Sockets.io for live chatCloud Firestore: on realtime listeners, charged a read even if no changes?Firestore offline data: Merging writes, maximum time of offline persistenceFirestore slow queries with large collections unless offline persistence disabledFirestore data structure to support “querying” overlapping rangesIn order to maintain live updates while also paginating using Firestore, should I maintain an array of listeners (`ListenerRegistration`)?Chat in Ionic with Cloud FirestoreRealtime updates with Firestore after migration from RealtimedatabaseOptimize Firestore real time updates in chat appFirestore: how can I get stream of updates from a server side?Listen to Firestore Metadata changes with Angular Fire
Is there any reason to change the ISO manually?
Global variables and information security
Why does the seven segment display have decimal point at the right?
Can anyone find an image of Henry Bolingbroke's Sovereygne Feather Seal?
How do German speakers decide what should be on the left side of the verb?
Do 643,000 Americans go bankrupt every year due to medical bills?
Is it rude to ask my opponent to resign an online game when they have a lost endgame?
Identifying the following distribution
Why does the UK Prime Minister need the permission of Parliament to call a general election?
How do I make my fill-in-the-blank exercise more obvious?
Mute single speaker?
Is directly echoing the user agent in PHP a security hole?
Do I have to rename all creatures in a new world?
What fraction of 2x2 USA call signs are vanity calls?
Is using different public keys for different peers safer than reusing the public key, beyond forward secrecy - x25519
Was Rosie the Riveter sourced from a Michelangelo painting?
Who are these people in this satirical cartoon of the Congress of Verona?
Do we know what "hardness" of Brexit people actually wanted in the referendum, if there had been other choices available?
How do I anonymously report the Establishment Clause being broken?
Tiny image scraper for xkcd.com
How quickly would a wooden treasure chest rot?
Is it risky to move from broad geographical diversification into investing mostly in less developed markets?
Professor refuses to write a recommendation letter to students who haven't written a research paper with him
How do I stop making people jump at home and at work?
Firestore realtime updates or Sockets.io for live chat
Cloud Firestore: on realtime listeners, charged a read even if no changes?Firestore offline data: Merging writes, maximum time of offline persistenceFirestore slow queries with large collections unless offline persistence disabledFirestore data structure to support “querying” overlapping rangesIn order to maintain live updates while also paginating using Firestore, should I maintain an array of listeners (`ListenerRegistration`)?Chat in Ionic with Cloud FirestoreRealtime updates with Firestore after migration from RealtimedatabaseOptimize Firestore real time updates in chat appFirestore: how can I get stream of updates from a server side?Listen to Firestore Metadata changes with Angular Fire
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
I need to develop a chat with realtime updates for my web app.
- Front: React
- Back: Node
- Database: Firestore
Today all my data queries are made in my backend through my REST API. I was thinking of using Sockets.IO but saw that Firestore also has data listeners (https://firebase.google.com/docs/firestore/query-data/listen).
Can you help me choosing by pointing out potential pros/cons of each solution?
Note that I never did any realtime chat feature before by myself so I may not see some obvious points. I don't want to start an opinion war and would like to find a solution to my particular problem for an app in production.
For the moment I have:
Firestore data listeners
- Implementation seems faster but I may not see some things (especially since my authentification is made with JWT on the server and not at all with firestore auth on the client)
- Offline capabilities out of the box
- Direct access from the client shall be faster?
Sockets.io
- More documentation and sources
- I can migrate if needed
firebase sockets socket.io google-cloud-firestore
add a comment |
I need to develop a chat with realtime updates for my web app.
- Front: React
- Back: Node
- Database: Firestore
Today all my data queries are made in my backend through my REST API. I was thinking of using Sockets.IO but saw that Firestore also has data listeners (https://firebase.google.com/docs/firestore/query-data/listen).
Can you help me choosing by pointing out potential pros/cons of each solution?
Note that I never did any realtime chat feature before by myself so I may not see some obvious points. I don't want to start an opinion war and would like to find a solution to my particular problem for an app in production.
For the moment I have:
Firestore data listeners
- Implementation seems faster but I may not see some things (especially since my authentification is made with JWT on the server and not at all with firestore auth on the client)
- Offline capabilities out of the box
- Direct access from the client shall be faster?
Sockets.io
- More documentation and sources
- I can migrate if needed
firebase sockets socket.io google-cloud-firestore
add a comment |
I need to develop a chat with realtime updates for my web app.
- Front: React
- Back: Node
- Database: Firestore
Today all my data queries are made in my backend through my REST API. I was thinking of using Sockets.IO but saw that Firestore also has data listeners (https://firebase.google.com/docs/firestore/query-data/listen).
Can you help me choosing by pointing out potential pros/cons of each solution?
Note that I never did any realtime chat feature before by myself so I may not see some obvious points. I don't want to start an opinion war and would like to find a solution to my particular problem for an app in production.
For the moment I have:
Firestore data listeners
- Implementation seems faster but I may not see some things (especially since my authentification is made with JWT on the server and not at all with firestore auth on the client)
- Offline capabilities out of the box
- Direct access from the client shall be faster?
Sockets.io
- More documentation and sources
- I can migrate if needed
firebase sockets socket.io google-cloud-firestore
I need to develop a chat with realtime updates for my web app.
- Front: React
- Back: Node
- Database: Firestore
Today all my data queries are made in my backend through my REST API. I was thinking of using Sockets.IO but saw that Firestore also has data listeners (https://firebase.google.com/docs/firestore/query-data/listen).
Can you help me choosing by pointing out potential pros/cons of each solution?
Note that I never did any realtime chat feature before by myself so I may not see some obvious points. I don't want to start an opinion war and would like to find a solution to my particular problem for an app in production.
For the moment I have:
Firestore data listeners
- Implementation seems faster but I may not see some things (especially since my authentification is made with JWT on the server and not at all with firestore auth on the client)
- Offline capabilities out of the box
- Direct access from the client shall be faster?
Sockets.io
- More documentation and sources
- I can migrate if needed
firebase sockets socket.io google-cloud-firestore
firebase sockets socket.io google-cloud-firestore
edited Mar 28 at 12:35
Quentin C
asked Mar 28 at 4:05
Quentin CQuentin C
3501 silver badge10 bronze badges
3501 silver badge10 bronze badges
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
Answering my own question.
Things I discovered:
- Firestore doesn't have a built-in presence system and needs a specific Cloud function that synchronises with realtime firebase to work (https://firebase.google.com/docs/firestore/solutions/presence). I want to notify my users by mails if they are offline so this "hacky" solution is a concern.
- Didn't find a simple way of using my current stateless auth with JWT to check if the client using firestore is authenticated
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55389993%2ffirestore-realtime-updates-or-sockets-io-for-live-chat%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Answering my own question.
Things I discovered:
- Firestore doesn't have a built-in presence system and needs a specific Cloud function that synchronises with realtime firebase to work (https://firebase.google.com/docs/firestore/solutions/presence). I want to notify my users by mails if they are offline so this "hacky" solution is a concern.
- Didn't find a simple way of using my current stateless auth with JWT to check if the client using firestore is authenticated
add a comment |
Answering my own question.
Things I discovered:
- Firestore doesn't have a built-in presence system and needs a specific Cloud function that synchronises with realtime firebase to work (https://firebase.google.com/docs/firestore/solutions/presence). I want to notify my users by mails if they are offline so this "hacky" solution is a concern.
- Didn't find a simple way of using my current stateless auth with JWT to check if the client using firestore is authenticated
add a comment |
Answering my own question.
Things I discovered:
- Firestore doesn't have a built-in presence system and needs a specific Cloud function that synchronises with realtime firebase to work (https://firebase.google.com/docs/firestore/solutions/presence). I want to notify my users by mails if they are offline so this "hacky" solution is a concern.
- Didn't find a simple way of using my current stateless auth with JWT to check if the client using firestore is authenticated
Answering my own question.
Things I discovered:
- Firestore doesn't have a built-in presence system and needs a specific Cloud function that synchronises with realtime firebase to work (https://firebase.google.com/docs/firestore/solutions/presence). I want to notify my users by mails if they are offline so this "hacky" solution is a concern.
- Didn't find a simple way of using my current stateless auth with JWT to check if the client using firestore is authenticated
edited Apr 1 at 22:33
answered Mar 28 at 11:30
Quentin CQuentin C
3501 silver badge10 bronze badges
3501 silver badge10 bronze badges
add a comment |
add a comment |
Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.
Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55389993%2ffirestore-realtime-updates-or-sockets-io-for-live-chat%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown