Search packages, repositories and app categories

GitHub repositorynirmalvora/okta_oidc

okta_oidc

nirmalvora/okta_oidc open-source repository details.

okta_oidc project cover
Stars
3
Forks
2
Last push (UTC)
Jun 4, 2025
Project status
Active

Original README

English project snapshot. Visit GitHub for the latest content.

okta_oidc

okta_oidc provide simple authentication integration in mobile apps.

Sample

Check out sample app Okta oidc

Installation

To add okta_oidc to your flutter application install instructions. Below are some Android and iOS specifics that are required for the okta_oidc to work correctly.

Android
  1. Make sure you set the minSdkVersion 21 or above in your "android/app/build.gradle"
android {
  minSdkVersion 21

  ...
}
  1. Similar to the sample app, you must add a redirect scheme to receive sign in results from the web browser. To do this, you must define a gradle manifest placeholder in your app's build.gradle:
manifestPlaceholders = [
    appAuthRedirectScheme: 'Add redirect schema here...'
  ]
iOS
  1. Make sure the minimum deployment target in Podfile set to 13 or above
platform :ios, '13.0'

Add `assets/okta_config.json` file in root of your project with below data.
{
  "client_id": "",
  "redirect_uri": "",
  "end_session_redirect_uri": "",
  "scopes": [],
  "discovery_uri": ""
}

Example

Available Methods
initOkta

This method will initialize okta with config file or map data.

code
OktaOidc oktaOidc = OktaOidc();

...
...

 Future<void> initOkta() async {
    final String response =
        await rootBundle.loadString('assets/okta_config.json');
    Map<String, dynamic>? oktaConfig = jsonDecode(response);
    oktaOidc.initOkta(oktaConfig);
  }
login

This method will redirect you to okta sign in page and return response or error.

code
 oktaOidc.login().then((value) {
                }).catchError((onError) {
                });
socialLogin

This method can be used for social login like linked in, google and apple sign in. Need to provide idp and idp-scope for social sign in.

code
  oktaOidc.socialLogin({
      "idp": "Add idp here...",
      "idp-scope": "Add scope here..."
    }).then((value) {
    });
getAccessToken

This method will return access token if logged in if token is expired it will refresh the token.

code
  oktaOidc.getAccessToken();
getUserProfile

This method returns user profile data.

code
  oktaOidc.getUserProfile();
logout

This method clears the user session.

code
  oktaOidc.logout();
Nirmal Vora GitHub avatar
GitHub author

Nirmal Vora ↗

LanguagesDartSwiftKotlinRubyObjective-C

Packages published by this repository

Dependencies used

Dependency list 4 items

  • flutter{"sdk":"flutter"}
  • plugin_platform_interface^2.0.2
  • flutter_testDevelopment{"sdk":"flutter"}
  • flutter_lintsDevelopment^2.0.0

How do I choose a repository?

Start with your use case, compare repository activity, and check the original project before adopting it.

  1. Search by repository name, owner or description, then narrow the results by topic.
  2. Compare stars, forks and recent pushes. Stars show community interest, not a guarantee of quality.
  3. Read the README, license and issues on GitHub before using a project.

Sources and maintenance

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗