deg / re-frame-firebase

Re-frame wrapper around Google's Firebase database
95 stars 32 forks source link

Add Cloud Firestore support #10

Closed leontalbot closed 6 years ago

leontalbot commented 7 years ago

Hello! Do you plan to add Cloud Firestore support?

deg commented 7 years ago

I would love to, but don’t have time right now. I’ve not yet had a chance to even look at the new APIs.

deg commented 7 years ago

I'm very open to a PR for this.

ericfode commented 6 years ago

I would be willing to work on a firestore PR if you give me some direction about how it should be done. I'll be using this library at work and we need it...

deg commented 6 years ago

Happy to answer questions you have about my code, and I would love to see this happen. But, I've not yet even looked at the new Cloud Firestore stuff.

leontalbot commented 6 years ago

That is really good news! I encourage you @ericfode to go ahead and submit a PR.

deg commented 6 years ago

@ericfode Great that you've started on this! Thanks!!

I share your taste for committing very small pieces as I'm working, but it would probably be better to rebase them together into bigger chunks before committing to a PR. (That said, if you think your code will be clearer in small commits, don't let me change your habits. We can always rebase at the end, if needed).

ericfode commented 6 years ago

I am more then happy to squash everything at the end. My goal with the PR at this point is to expose what I am working on, because it's not entirely clear to me how to resolve the differences between firebase and firestore.

Just to clarify, your suggestion is that while the PR is in flight I start squashing early? (i don't mind doing this it's just never occurred to me).

Eric

deg commented 6 years ago

You could do that. Or, a more common style is to commit small steps to a branch of your clone, and then squash it into prettiness when you generate the PR.

deg commented 6 years ago

Oops, hit enter. Typing on a phone on a bouncy train. In this case, since your already turned the branch into a PR, don't worry about it. Just tell me when it is ready for comments, or you have questions, and i can ignore intermediate pushes.

ericfode commented 6 years ago

:facepalm: I get it now! it sends you an email every time push to the pr! I'm sorry I did not think of that. Sounds good.

On Wed, Jan 24, 2018 at 8:30 AM David Goldfarb notifications@github.com wrote:

Oops, hit enter. Typing on a phone on a bouncy train. In this case, since your already turned the branch into a PR, don't worry about it. Just tell me when it is ready for comments, or you have questions, and i can ignore intermediate pushes.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/deg/re-frame-firebase/issues/10#issuecomment-360191660, or mute the thread https://github.com/notifications/unsubscribe-auth/AADGnpsn2H8BEd-AnH1_MsvkI2c5LUbvks5tN1qZgaJpZM4QdVJ1 .

ericfode commented 6 years ago

I am going to close my pull request because there is much more work here then I expected. So I added a bounty Bountysource

To any hunters that come here please feel free to steal my pull request.

gabrielsimoes commented 6 years ago

I'll take a stab at this. I have just written the externs for Firestore. I'll now experiment a little with how to integrate firestore with re-frame.

thosmos commented 6 years ago

FYI I've made some changes to matchbox to get it working in production with the latest cljsjs/firebase 4.9.0 and Java Firebase-Admin 6.0.0. You can check it out here. It would be neat if the same API could be used for Firestore as well. It probably would take minimal work to do it. I've been using it in production for a while. It has some rough edges due to the large changes that happened from v2 to v3. But I like the unified API across front and back ends.