gskinnerTeam / flokk
- суббота, 11 июля 2020 г. в 00:22:47
Dart
A fresh and modern Google Contacts manager that integrates with GitHub and Twitter.
A fresh and modern Google Contacts manager that integrates with GitHub and Twitter.
master
branch in their git repo and checkout commit 9c3f0faa6d
.
Google Sign In is required in order to run the app (unless running with cached data). The app uses the Google People API, and you will need to provide your own Google OAuth 2 client credentials in the /lib/api_keys.dart
file.
Follow the instructions here to enable the People API and create credentials:
To optionally fetch social data for your contacts, add your own API keys for those as well:
Although the Twitter and GitHub keys are optional, they are recommended. Otherwise the app will not be able to fetch tweets and GitHub calls will be subject to a rate limit (https://developer.github.com/v3/#rate-limiting).
If you're building for web:
/web/index.html
to include your web credentials (web client Id) <meta name="google-signin-client_id" content="YOUR_GOOGLE_SIGN_IN_OAUTH_CLIENT_ID.apps.googleusercontent.com">
.For Twitter support to work on web builds, it is necessary to use a CORS proxy. You can set up a proxy on your own domain, or else run a localhost instance with proxy/app.js
.
If setting up on your domain, ensure you have enabled https (https://letsencrypt.org/). Once you have the security certificate, edit proxy/app.js
and insert your cert and key. This is not necessary if running a localhost instance.
After the proxy is set up, edit services/twitter_rest_service.dart
to point to your running proxy instance (e.g. "https://my-proxy.com", "http://localhost", etc.)
For more information, see https://github.com/Rob--W/cors-anywhere
If you simply want to see the app running, it is possible to run the app using cached data:
Note: This is meant as a 'read-only' mode so you can quickly explore all the widgets and features of the app. Updates, deletes, etc are not expected to work.
Debug Builds
flutter run -d DEVICE_ID
to deploy a test buildflutter run
windows
, linux
, macos
, chrome
--release
to deploy an optimized buildRelease Builds
flutter build PACKAGE_TYPE
to build a release packageflutter build
windows
, linux
, apk
, ios
lxd init
on your system if you haven't already.
** Then execute snapcraft --use-lxd
to create the snap from the flutter buildForce Log In
kForceWebLogin
flag to force release builds to skip the oauth screen.--dart-define=flokk.forceWebLogin=true
to your build command to enableflutter build web --dart-define=flokk.forceWebLogin=true
The /linux and /windows folders contain modifications and should not be upgraded to upstream without first verifying that each plugin works correctly with the new upstream code and any modifications are made.
Since the desktop runners for this project may contain modifications, upgrades should not be made without first verifying that every plugin and embedder can be upgraded and that they remain compatible after an upgrade. Hopefully this will not be as much of an issue once Flutter's desktop support becomes more mature.
--
Happy Flokking!