okta_oidc_plus 1.0.0 copy "okta_oidc_plus: ^1.0.0" to clipboard
okta_oidc_plus: ^1.0.0 copied to clipboard

A modern Flutter plugin for Okta OIDC authentication enabling secure user login, token management, and identity integration using OpenID Connect with Okta services.

example/lib/main.dart

import 'package:flutter/material.dart';

import 'core/theme/app_theme.dart';
import 'data/datasources/okta_remote_datasource.dart';
import 'data/repositories/auth_repository_impl.dart';
import 'domain/usecases/get_access_token_usecase.dart';
import 'domain/usecases/get_user_profile_usecase.dart';
import 'domain/usecases/initialize_okta_usecase.dart';
import 'domain/usecases/login_usecase.dart';
import 'domain/usecases/logout_usecase.dart';
import 'presentation/pages/splash_page.dart';
import 'presentation/state/auth_notifier.dart';

void main() {
  WidgetsFlutterBinding.ensureInitialized();

  // Clean Architecture Dependency Injection Setup
  final remoteDataSource = OktaRemoteDataSourceImpl();
  final authRepository = AuthRepositoryImpl(remoteDataSource: remoteDataSource);

  final authNotifier = AuthNotifier(
    initializeOktaUseCase: InitializeOktaUseCase(authRepository),
    loginUseCase: LoginUseCase(authRepository),
    logoutUseCase: LogoutUseCase(authRepository),
    getUserProfileUseCase: GetUserProfileUseCase(authRepository),
    getAccessTokenUseCase: GetAccessTokenUseCase(authRepository),
  );

  runApp(MyApp(authNotifier: authNotifier));
}

class MyApp extends StatelessWidget {
  final AuthNotifier authNotifier;

  const MyApp({super.key, required this.authNotifier});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Okta OIDC Plus Clean Architecture',
      debugShowCheckedModeBanner: false,
      theme: AppTheme.darkTheme,
      home: SplashPage(notifier: authNotifier),
    );
  }
}
1
likes
0
points
137
downloads

Publisher

verified publishereebrahimjoy.com

Weekly Downloads

A modern Flutter plugin for Okta OIDC authentication enabling secure user login, token management, and identity integration using OpenID Connect with Okta services.

Homepage
Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on okta_oidc_plus

Packages that implement okta_oidc_plus