Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Google Drive support #148

Closed
perry-mitchell opened this issue Mar 11, 2019 · 9 comments · Fixed by #176

Comments

@perry-mitchell
Copy link
Member

commented Mar 11, 2019

Integrate Google Drive in the mobile app.

@ApolllonDev

This comment has been minimized.

Copy link

commented Mar 15, 2019

Hi, @perry-mitchell,
I would like to work on this issue.
This is my first time contributing to the project and I would really appreciate some guidance with this feature implementation.

@perry-mitchell

This comment has been minimized.

Copy link
Member Author

commented Mar 16, 2019

@ApolllonDev That’d be great! We’d be happy to help. My recommendation is to start with a PR that we can help you with. Google drive is complex enough that we should expect some challenges, but it essentially works the same as Dropbox.

Let us know if you get started!

@ApolllonDev

This comment has been minimized.

Copy link

commented Mar 24, 2019

@perry-mitchell It seems that Dropbox has an icon in the resources/images/ folder.
Unfortunately, there isn't one for Google Drive and the project is under GNU v3.0 License which includes Commercial use and Modification. Thus, there isn't a 256x256 icon available for commersial reuse with modification when I am performing a Google search. Please advise.

@ApolllonDev

This comment has been minimized.

Copy link

commented Mar 24, 2019

I checked the Dropbox files with t search and it seems that I have to add some new stuff and do some modifications as well. I am planning to create the following files:

  • source/actions/googleDrive.js
  • source/library/googleDrive.js
  • source/selectors/googleDrive.js
  • resources/images/googleDrive-256.png (follow up with this one)
  • source/reducers/googleDrive.js
  • source/components/GoogleDriveAuthButton.js
  • source/containers/GoogleDriveAuthButton.js

Additionally, following files will be modified:

  • source/actions/types.js
  • package.json

I am planning to use this npm package.
It has client.json file as an authentication requirement.

@perry-mitchell

This comment has been minimized.

Copy link
Member Author

commented Mar 28, 2019

Hi @ApolllonDev - Thanks for touching base. Apologies for not coming back sooner.

Unfortunately, there isn't one for Google Drive and the project is under GNU v3.0 License which includes Commercial use and Modification

In my opinion this is fine - Buttercup mobile isn't "commercial use" as it's free and open source. Even if we add our paid option in there later, it won't have anything to do with Google or Google Drive, so I don't think there's any conflict there. We're already using the icon in the browser extension, and we've had that reviewed by Google personnel already.

I am planning to create the following files

Looks good!

I am planning to use this npm package.
It has client.json file as an authentication requirement.

Sounds good too. We used a simple OAuth redirect in the extension, but we're still seeing issues with the OAuth token and refreshing it. I'd be interested to see how it goes here. Do you plan to perform all of the OAuth stuff using that package?

@perry-mitchell

This comment has been minimized.

Copy link
Member Author

commented Mar 28, 2019

Actually @ApolllonDev, we'd probably prefer it if you used our client for Google Drive access. Would be nice to keep it consistent across the platforms. Also, ours simply uses REST and doesn't require the googleapis project.

@ApolllonDev

This comment has been minimized.

Copy link

commented Mar 29, 2019

@perry-mitchell I will look into that, thank you for your suggestion 👍

@ApolllonDev

This comment has been minimized.

Copy link

commented Apr 14, 2019

#151

@perry-mitchell

This comment has been minimized.

Copy link
Member Author

commented Aug 23, 2019

Quick update: After toiling with react-native-app-auth, it seems it doesn't support app extensions, which Buttercup relies on for mobile browser form autofill. Due to this, we're forced to use something else to get google signin working. Something like this: https://github.com/react-native-community/react-native-google-signin

Work is underway and should be completed in the very near future.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
2 participants
You can’t perform that action at this time.