dhruvaray / backbone-associations

Create object hierarchies with Backbone models; Respond to hierarchy changes using regular Backbone events.
http://dhruvaray.github.io/backbone-associations/
MIT License
492 stars 75 forks source link

Who uses Backbone-Associations? #55

Open dhruvaray opened 11 years ago

dhruvaray commented 11 years ago

A compilation of projects which use Backbone-Associations. Please add your own project or product to this list. It would be wonderful and motivating to hear your story!

dhruvaray commented 11 years ago

Source : Google Search

Kinvey

http://techcrunch.com/2013/06/05/google-app-engine-adds-kinvey-to-power-mobile-backend/ "Google is broadening its reach into the mobile app development world today through a partnership with Kinvey, which will provide an enterprise backend-as-a-service (BaaS) layer on top of Google App Engine. With Kinvey, Google App Engine will support iOS, Android"

http://devcenter.kinvey.com/backbone/guides/datastore#RelationalData "If you are planning on using this functionality, we highly recommend including the Backbone-associations plugin. Internally, the library checks for the presence of this plugin and adds additional functionality accordingly. The remainder of this guide will assume you are using this plugin."

dhruvaray commented 11 years ago

Source : Issue #51

The RESThub stack (http://resthub.org/) is currently porting from Backbone-Relational to Backbone-Associations!

sdeleuze commented 11 years ago

RESThub 2.1.2 has been released and now includes by default Backbone Associations 0.5.1.

pplante commented 11 years ago

At @rentlytics we're porting from backbone-relational in a new version of our software. For the most part its been going rather well with @monokrome only submitting 2 issues so far. He has been heading up the new version, so maybe he can share some of his thoughts with you. But this library is much cleaner to work with than backbone-relational, mostly because it is simpler and does less things.

dhruvaray commented 11 years ago

@pplante : Thanks for sharing this! I am glad and excited to hear that @rentlytics is moving over to BB-Associations! As usual, I would like to hear about your porting experiences - so that we can incorporate them into our documentation.

does less things

  1. No implicit store or cache or model identity management : In our experience, the app tends to bloat (memory wise) due to this. If we ever added this feature, it would be injected externally (and optionally) with another store plugin.
  2. No implicit fetch/save : Difficult to generalize in an useful way for network (read web) applications. Clearly, we don't want entire object graphs being serialized across the network. Having said this, folks can easily customize it for their needs. Kinvey seems to have done it for their Backend-As-A-Service platform.
  3. No explicit reverse relations : It can cause ambiguities. I have opened #51 to discuss why folks need this?
  4. No sub-types.

BB-Associations brings different capabilities to the table - after we cross the model-association definition phase

  1. We only share the BB-Relational API definition - when it comes to defining associations(relations). Beneath the covers, it is a significantly simpler implementation - which is easier to understand, extend and maintain.
  2. BB-Associations provides a superior eventing experience (in an object hierarchy scenario) and notion of paths. You can now listen to any events happening in your object hierarchy stored within your web-app (or SPA). And can respond to them. (Like update your views). You can find comprehensive documentation about events here. I would encourage your team to look at this feature to simplify your code-base.
  3. It is fast (relative to BB-Relational), tiny (2.4KB gzipped and minified) and consumes no app memory - other than what it takes to define (and instantiate) your models.
  4. It supports self-reference and cycle scenarios.
filR commented 11 years ago

http://www.tapestry.net/ We use backbone associations for our phonegap iOS, android and soon desktop app. Why do we use it? We'd be crazy not to.

dhruvaray commented 11 years ago

@filR : Thank you! You made our day!

kosmotaur commented 11 years ago

Hi!

We are using Backbone-associations at Pearson's Data Analytics and Visualization team. The UI portion of the current project is for defining certain query parameters to get insight on English courses and how students do in them. There's lots of intertwined metadata to be stored on our models, and your library made it palatable, maintainable and pleasant to work with.

Thanks!

dhruvaray commented 11 years ago

@kosmotaur : Wow! It is an honor to be associated with all your efforts! Thank you so much for sharing this...

astjohn commented 11 years ago

At Sitata, we're currently migrating from Backbone Relational. The decision was made 100% based on the store concept, which didn't jive well with our existing patterns. Backbone associations is much simpler and hopefully won't introduce easy opportunities for our devs to create memory leaks.

dhruvaray commented 11 years ago

@astjohn : Wonderful! I think you should not have any issues, but should you find something, please do file on the issue tracking system.

asheriff commented 10 years ago

At Vaddio after evaluating several relational plugins we chose backbone-associations to build real-time web interfaces for audio and video devices running embedded linux. Thanks for this plugin.

dhruvaray commented 10 years ago

Thanks @asheriff for sharing this! We are honored...

logankoester commented 10 years ago

At DanceSafe we are using Backbone-Associations in our Android mobile app to provide drug safety & harm reduction information to the rave & nightclub community.

jdkanani commented 10 years ago

Wow! Thank you @logankoester

svperfecta commented 10 years ago

If @logankoester uses it, it's good enough for me. We use it here for client work @madgloryint

logankoester commented 10 years ago

:cactus: :pineapple: :yum:

dhruvaray commented 10 years ago

Great to hear that @genexp!

jdkanani commented 10 years ago

@genexp :+1:

atomictag commented 9 years ago

oneoverzero uses backbone.associations on many web projects. Two mobile apps recently added to the portfolio: Credit Suisse VIVA and Cornèrcard Mobile (available for both iOS and Android)

jnwng commented 9 years ago

at Coursera, we're using backbone-associations pretty extensively for our new on-demand platform, an example of which you can find here

jdkanani commented 9 years ago

@atomictag and @jnwng Wow! That's awesome :+1:

pascalpp commented 9 years ago

At about.me we're in the midst of rewriting our core product using Marionette and Backbone Associations. Really liking it and can't wait to launch it. We've hit a snag though, regarding previous model attributes getting obliterated by fetching data on the parent model. I've posted a reduction of the issue at http://stackoverflow.com/questions/27086259/merge-attributes-when-using-model-set-with-backbone-associations. If anyone here can shed some light on that question, I'd be really grateful.

Update: got an answer to my question: these singleton related models need to have an id assigned in order for attributes to get merged. Makes sense.

theoephraim commented 9 years ago

Using it heavily on our booking platform at http://breather.com :+1: