apollographql / meteor-integration

🚀 meteor add apollo
http://dev.apollodata.com/core/meteor.html
108 stars 45 forks source link

Remove mongo / minimongo from client? #51

Closed Torsten85 closed 8 years ago

Torsten85 commented 8 years ago

Hey, One question thats bothering me: Is it possible to completely remove mongo and minimongo from the client?

This package uses accounts-base which has a dependency to mongo, so I guess thats the problem here right?

lorensr commented 8 years ago

Ah, interesting. This package should probably be separated into apollo and apollo-meteor-accounts. For now I'd fork this and take out the accounts stuff from client:

https://github.com/apollostack/meteor-integration/blob/master/main-client.js

and take out this line:

https://github.com/apollostack/meteor-integration/blob/master/package.js#L12

and add:

api.use('accounts-base', 'server');

(or also take out Accounts from server side)

Torsten85 commented 8 years ago

thanks for your answer. I could strip out everything from accounts-base ect. but I like to still have the possibility to use the meteor authentication. I simply don't need the Accounts.users collection or any other mongo collection on the client.

but I guess that would need a different accounts package.

ilan-schemoul commented 7 years ago

This package should probably be separated into apollo and apollo-meteor-accounts

Yes it should. I don't see why this package should depend on accounts-base as accounts-base needs mongo and if we're using apollo we're not using mongo.

xavxyz commented 7 years ago

@nitrobay 👋, the package depends on accounts-base at the moment because it adds the current user to the resolvers context for you, and create a middleware for the network interface to grab the login token and pass it with every request.

This package has been made to integrate the Apollo tools painlessly in a Meteor app (black box package). If you are not using Meteor Accounts system, there is almost no value in this package: you should instantiate your own server (~20 lines of code) and your own client (~10 lines of code).

To get rid of accounts-base while not breaking people apps that rely on it, we would have two atmosphere packages:

Do you think you could make a pull request to extract the accounts related code into a separate atmosphere package? 🙏

ilan-schemoul commented 7 years ago

Okay I'll make a PR whenever I could. Thanks a lot about the informations, it's now much clearer.