We have decided to temporarily archive this repository and place it into maintenance mode. This decision allows us to focus our efforts and resources on advancing our core product line. During this period, active development and the addition of new features will be paused. We value the contributions of the community and appreciate your understanding as we prioritize our main projects. We look forward to resuming development in the future and will keep you updated on any changes.
Magic empowers developers to protect their users via an innovative, passwordless authentication flow without the UX compromises that burden traditional OAuth implementations.
As of v4.1.0
, users will be asked to go through a device registration flow to securely confirm any new device they use to login. If you run into this issue, please consider upgrading to the latest version of the SDK.
Install Flutter & Dart https://flutter.dev/docs/get-started/install
$ cd project_root/magic_demo
$ flutter run
Dependency installation is automatically done in the flutter run
command
For detail integration please check our official doc or README in each package directory
Package Name | Changelog | Description |
---|---|---|
magic_sdk |
CHANGELOG | Flutter entry-point for Magic SDK. |
magic_ext_oauth |
CHANGELOG | An Extension to access OAuth providers |
magic_ext_tezos |
CHANGELOG | Tezos blockchain extension that integrates with Tezart |
magic_ext_solana |
CHANGELOG | Solana blockchain extension that integrates with crypto-please/solana |
magic_ext_oidc |
CHANGELOG | Magic Open Id Connect SDK extension for Flutter |
Make sure you have the third-party blockchain dependencies installed
You may remove these dependencies if you don't need to access these chains
Files ending with *.g.dart
are auto generated type files that are used to serialize / deserialize a class.
To generate a new sets of files to reflect your changes please run the command below at your/path/to/magic_sdk
$ dart run build_runner build --delete-conflicting-outputs
Relates to issue #43.
Add a proguard-rules.pro
file under your android/app
folder (or update your existing one), with the following rule:
# Preserve annotated Javascript interface methods.
-keepclassmembers class * {
@android.webkit.JavascriptInterface <methods>;
}
Example: Magic Flutter Demo App