├── .gitignore ├── .metadata ├── LICENSE ├── README.md ├── analysis_options.yaml ├── android ├── .gitignore ├── app │ ├── build.gradle │ └── src │ │ ├── debug │ │ └── AndroidManifest.xml │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── kotlin │ │ │ └── com │ │ │ │ └── example │ │ │ │ └── flutter_clean_architecture │ │ │ │ └── MainActivity.kt │ │ └── res │ │ │ ├── drawable-v21 │ │ │ └── launch_background.xml │ │ │ ├── drawable │ │ │ └── launch_background.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── values-night │ │ │ └── styles.xml │ │ │ └── values │ │ │ └── styles.xml │ │ └── profile │ │ └── AndroidManifest.xml ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ └── gradle-wrapper.properties └── settings.gradle ├── assets └── fonts │ ├── Butler_Bold.ttf │ ├── Butler_Light.ttf │ ├── Butler_Regular.ttf │ ├── IBMPlexSans-Bold.ttf │ ├── IBMPlexSans-Light.ttf │ └── IBMPlexSans-Regular.ttf ├── ios ├── .gitignore ├── Flutter │ ├── AppFrameworkInfo.plist │ ├── Debug.xcconfig │ └── Release.xcconfig ├── Podfile ├── Podfile.lock ├── Runner.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcshareddata │ │ │ ├── IDEWorkspaceChecks.plist │ │ │ └── WorkspaceSettings.xcsettings │ └── xcshareddata │ │ └── xcschemes │ │ └── Runner.xcscheme ├── Runner.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ ├── IDEWorkspaceChecks.plist │ │ └── WorkspaceSettings.xcsettings └── Runner │ ├── AppDelegate.swift │ ├── Assets.xcassets │ ├── AppIcon.appiconset │ │ ├── Contents.json │ │ ├── Icon-App-1024x1024@1x.png │ │ ├── Icon-App-20x20@1x.png │ │ ├── Icon-App-20x20@2x.png │ │ ├── Icon-App-20x20@3x.png │ │ ├── Icon-App-29x29@1x.png │ │ ├── Icon-App-29x29@2x.png │ │ ├── Icon-App-29x29@3x.png │ │ ├── Icon-App-40x40@1x.png │ │ ├── Icon-App-40x40@2x.png │ │ ├── Icon-App-40x40@3x.png │ │ ├── Icon-App-60x60@2x.png │ │ ├── Icon-App-60x60@3x.png │ │ ├── Icon-App-76x76@1x.png │ │ ├── Icon-App-76x76@2x.png │ │ └── Icon-App-83.5x83.5@2x.png │ └── LaunchImage.imageset │ │ ├── Contents.json │ │ ├── LaunchImage.png │ │ ├── LaunchImage@2x.png │ │ ├── LaunchImage@3x.png │ │ └── README.md │ ├── Base.lproj │ ├── LaunchScreen.storyboard │ └── Main.storyboard │ ├── Info.plist │ └── Runner-Bridging-Header.h ├── lib ├── main.dart └── src │ ├── config │ ├── router │ │ ├── app_router.dart │ │ └── app_router.gr.dart │ └── themes │ │ └── app_theme.dart │ ├── data │ ├── datasources │ │ ├── local │ │ │ ├── app_database.dart │ │ │ ├── app_database.g.dart │ │ │ ├── converters │ │ │ │ └── source_type_converter.dart │ │ │ └── dao │ │ │ │ └── article_dao.dart │ │ └── remote │ │ │ ├── news_api_service.dart │ │ │ └── news_api_service.g.dart │ └── repositories │ │ ├── api_repository_impl.dart │ │ ├── base │ │ └── base_api_repository.dart │ │ └── database_repository_impl.dart │ ├── domain │ ├── models │ │ ├── article.dart │ │ ├── requests │ │ │ └── breaking_news.request.dart │ │ ├── responses │ │ │ └── breaking_news_response.dart │ │ └── source.dart │ └── repositories │ │ ├── api_repository.dart │ │ └── database_repository.dart │ ├── locator.dart │ ├── presentation │ ├── cubits │ │ ├── base │ │ │ └── base_cubit.dart │ │ ├── local_articles │ │ │ ├── local_articles_cubit.dart │ │ │ └── local_articles_state.dart │ │ └── remote_articles │ │ │ ├── remote_articles_cubit.dart │ │ │ └── remote_articles_state.dart │ ├── views │ │ ├── article_details_view.dart │ │ ├── breaking_news_view.dart │ │ └── saved_articles_view.dart │ └── widgets │ │ └── article_widget.dart │ └── utils │ ├── constants │ ├── nums.dart │ └── strings.dart │ ├── extensions │ └── scroll_controller_extensions.dart │ └── resources │ └── data_state.dart ├── pubspec.lock ├── pubspec.yaml └── test └── widget_test.dart /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/.gitignore -------------------------------------------------------------------------------- /.metadata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/.metadata -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/README.md -------------------------------------------------------------------------------- /analysis_options.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/analysis_options.yaml -------------------------------------------------------------------------------- /android/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/.gitignore -------------------------------------------------------------------------------- /android/app/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/app/build.gradle -------------------------------------------------------------------------------- /android/app/src/debug/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/app/src/debug/AndroidManifest.xml -------------------------------------------------------------------------------- /android/app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/app/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /android/app/src/main/kotlin/com/example/flutter_clean_architecture/MainActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/app/src/main/kotlin/com/example/flutter_clean_architecture/MainActivity.kt -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-v21/launch_background.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/app/src/main/res/drawable-v21/launch_background.xml -------------------------------------------------------------------------------- /android/app/src/main/res/drawable/launch_background.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/app/src/main/res/drawable/launch_background.xml -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/values-night/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/app/src/main/res/values-night/styles.xml -------------------------------------------------------------------------------- /android/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/app/src/main/res/values/styles.xml -------------------------------------------------------------------------------- /android/app/src/profile/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/app/src/profile/AndroidManifest.xml -------------------------------------------------------------------------------- /android/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/build.gradle -------------------------------------------------------------------------------- /android/gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/gradle.properties -------------------------------------------------------------------------------- /android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /android/settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/android/settings.gradle -------------------------------------------------------------------------------- /assets/fonts/Butler_Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/assets/fonts/Butler_Bold.ttf -------------------------------------------------------------------------------- /assets/fonts/Butler_Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/assets/fonts/Butler_Light.ttf -------------------------------------------------------------------------------- /assets/fonts/Butler_Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/assets/fonts/Butler_Regular.ttf -------------------------------------------------------------------------------- /assets/fonts/IBMPlexSans-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/assets/fonts/IBMPlexSans-Bold.ttf -------------------------------------------------------------------------------- /assets/fonts/IBMPlexSans-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/assets/fonts/IBMPlexSans-Light.ttf -------------------------------------------------------------------------------- /assets/fonts/IBMPlexSans-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/assets/fonts/IBMPlexSans-Regular.ttf -------------------------------------------------------------------------------- /ios/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/.gitignore -------------------------------------------------------------------------------- /ios/Flutter/AppFrameworkInfo.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Flutter/AppFrameworkInfo.plist -------------------------------------------------------------------------------- /ios/Flutter/Debug.xcconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Flutter/Debug.xcconfig -------------------------------------------------------------------------------- /ios/Flutter/Release.xcconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Flutter/Release.xcconfig -------------------------------------------------------------------------------- /ios/Podfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Podfile -------------------------------------------------------------------------------- /ios/Podfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Podfile.lock -------------------------------------------------------------------------------- /ios/Runner.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings -------------------------------------------------------------------------------- /ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme -------------------------------------------------------------------------------- /ios/Runner.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings -------------------------------------------------------------------------------- /ios/Runner/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/AppDelegate.swift -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md -------------------------------------------------------------------------------- /ios/Runner/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Base.lproj/LaunchScreen.storyboard -------------------------------------------------------------------------------- /ios/Runner/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Base.lproj/Main.storyboard -------------------------------------------------------------------------------- /ios/Runner/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/ios/Runner/Info.plist -------------------------------------------------------------------------------- /ios/Runner/Runner-Bridging-Header.h: -------------------------------------------------------------------------------- 1 | #import "GeneratedPluginRegistrant.h" 2 | -------------------------------------------------------------------------------- /lib/main.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/main.dart -------------------------------------------------------------------------------- /lib/src/config/router/app_router.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/config/router/app_router.dart -------------------------------------------------------------------------------- /lib/src/config/router/app_router.gr.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/config/router/app_router.gr.dart -------------------------------------------------------------------------------- /lib/src/config/themes/app_theme.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/config/themes/app_theme.dart -------------------------------------------------------------------------------- /lib/src/data/datasources/local/app_database.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/data/datasources/local/app_database.dart -------------------------------------------------------------------------------- /lib/src/data/datasources/local/app_database.g.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/data/datasources/local/app_database.g.dart -------------------------------------------------------------------------------- /lib/src/data/datasources/local/converters/source_type_converter.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/data/datasources/local/converters/source_type_converter.dart -------------------------------------------------------------------------------- /lib/src/data/datasources/local/dao/article_dao.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/data/datasources/local/dao/article_dao.dart -------------------------------------------------------------------------------- /lib/src/data/datasources/remote/news_api_service.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/data/datasources/remote/news_api_service.dart -------------------------------------------------------------------------------- /lib/src/data/datasources/remote/news_api_service.g.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/data/datasources/remote/news_api_service.g.dart -------------------------------------------------------------------------------- /lib/src/data/repositories/api_repository_impl.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/data/repositories/api_repository_impl.dart -------------------------------------------------------------------------------- /lib/src/data/repositories/base/base_api_repository.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/data/repositories/base/base_api_repository.dart -------------------------------------------------------------------------------- /lib/src/data/repositories/database_repository_impl.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/data/repositories/database_repository_impl.dart -------------------------------------------------------------------------------- /lib/src/domain/models/article.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/domain/models/article.dart -------------------------------------------------------------------------------- /lib/src/domain/models/requests/breaking_news.request.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/domain/models/requests/breaking_news.request.dart -------------------------------------------------------------------------------- /lib/src/domain/models/responses/breaking_news_response.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/domain/models/responses/breaking_news_response.dart -------------------------------------------------------------------------------- /lib/src/domain/models/source.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/domain/models/source.dart -------------------------------------------------------------------------------- /lib/src/domain/repositories/api_repository.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/domain/repositories/api_repository.dart -------------------------------------------------------------------------------- /lib/src/domain/repositories/database_repository.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/domain/repositories/database_repository.dart -------------------------------------------------------------------------------- /lib/src/locator.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/locator.dart -------------------------------------------------------------------------------- /lib/src/presentation/cubits/base/base_cubit.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/presentation/cubits/base/base_cubit.dart -------------------------------------------------------------------------------- /lib/src/presentation/cubits/local_articles/local_articles_cubit.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/presentation/cubits/local_articles/local_articles_cubit.dart -------------------------------------------------------------------------------- /lib/src/presentation/cubits/local_articles/local_articles_state.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/presentation/cubits/local_articles/local_articles_state.dart -------------------------------------------------------------------------------- /lib/src/presentation/cubits/remote_articles/remote_articles_cubit.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/presentation/cubits/remote_articles/remote_articles_cubit.dart -------------------------------------------------------------------------------- /lib/src/presentation/cubits/remote_articles/remote_articles_state.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/presentation/cubits/remote_articles/remote_articles_state.dart -------------------------------------------------------------------------------- /lib/src/presentation/views/article_details_view.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/presentation/views/article_details_view.dart -------------------------------------------------------------------------------- /lib/src/presentation/views/breaking_news_view.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/presentation/views/breaking_news_view.dart -------------------------------------------------------------------------------- /lib/src/presentation/views/saved_articles_view.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/presentation/views/saved_articles_view.dart -------------------------------------------------------------------------------- /lib/src/presentation/widgets/article_widget.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/presentation/widgets/article_widget.dart -------------------------------------------------------------------------------- /lib/src/utils/constants/nums.dart: -------------------------------------------------------------------------------- 1 | const int defaultPageSize = 20; 2 | -------------------------------------------------------------------------------- /lib/src/utils/constants/strings.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/utils/constants/strings.dart -------------------------------------------------------------------------------- /lib/src/utils/extensions/scroll_controller_extensions.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/utils/extensions/scroll_controller_extensions.dart -------------------------------------------------------------------------------- /lib/src/utils/resources/data_state.dart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/lib/src/utils/resources/data_state.dart -------------------------------------------------------------------------------- /pubspec.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/pubspec.lock -------------------------------------------------------------------------------- /pubspec.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shahanajparvin/clean_architecture_flutter_example/HEAD/pubspec.yaml -------------------------------------------------------------------------------- /test/widget_test.dart: -------------------------------------------------------------------------------- 1 | void main() {} 2 | --------------------------------------------------------------------------------