diff --git a/packages/wyatt_cloud_messaging_bloc_base/README.md b/packages/wyatt_cloud_messaging_bloc_base/README.md
index 8b55e735..fffba5b2 100644
--- a/packages/wyatt_cloud_messaging_bloc_base/README.md
+++ b/packages/wyatt_cloud_messaging_bloc_base/README.md
@@ -11,29 +11,124 @@ and the Flutter guide for
[developing packages and plugins](https://flutter.dev/developing-packages).
-->
-TODO: Put a short description of the package here that helps potential users
-know whether this package might be useful for them.
+# Cloud Messaging BLoC Base
+
+
+
+
+
+
+This package serves as an abstraction for managing notifications within Flutter applications. It does not include a built-in data source implementation. Therefore, it is essential to provide your own implementation or utilize one of our various implementations listed below:
+
+- [Firebase Cloud Messaging ](https://git.wyatt-studio.fr/Wyatt-FOSS/-/packages/pub/wyatt_cloud_messaging_bloc_base/0.1.1+1)
+
+
+This package enables you to easily integrate your data source, allowing the package to handle business logic, error management, and state logic seamlessly.
## Features
-TODO: List what your package can do. Maybe include images, gifs, or videos.
+* 🧐 Wyatt Architecture
+* 🧱 Entities
+ - `RemoteNotification` -> Contains notification innformations
+* 🧊 Cubits, why make it complicated when you can make it simple?
+ - Goes to the essential
+* 📐 Consistent
+ - Every class have same naming convention
## Getting started
-TODO: List prerequisites and provide or point to information on how to
-start using the package.
+Simply add `wyatt_cloud_messaging_bloc_base` in `pubspec.yaml` , then
+
+```dart
+import 'package:wyatt_cloud_messaging_bloc_base/wyatt_cloud_messaging_bloc_base.dart';
+```
+
## Usage
-TODO: Include short and useful examples for package users. Add longer examples
-to `/example` folder.
+### Data source
+
+The initial step involves furnishing a data source, presenting you with two options:
+- You can select from our provided implementations, which are listed above.
+- Alternatively, you can craft a custom implementation by extending the `CloudMessagingRemoteDataSource` class and implementing all of its methods.
+
+In this example, we will use the Firebase Cloud Messaging implementation.
```dart
-const like = 'sample';
+getIt.registerLazySingleton(
+ () => CloudMessagingFirebaseDataSource())
```
+> Here we use GetIt.
+
+### Repository
+
+Do the same for the repository. This one is already developed, you just need to inject it.
+
+```dart
+getIt.registerLazySingleton(
+ () => CloudMessagingRepositoryImpl(
+ notificationRemoteDataSource: getIt(),
+ ),
+)
+```
+
+### Use cases
+
+Do the same for use cases. Select an inject the ones you need in your app. Here are avalaible use cases:
+
+- `GetCloudMessagingTokenUsCase`
+- `InitCloudmessagingUseCase`
+- `ListenCloudMessagingUseCase`
+- `RequestCloudMessagingPermissionUseCase`
+- `SubscribeToNotificationTopicUseCase`
+- `UnsubscribeFromNotificationTopicUseCase`
+
+Here is an example with some usecase.
+
+```dart
+getIt
+ ..registerLazySingleton(
+ () => ListenNotificationUseCase(
+ notificationRepository: getIt(),
+ ),
+ )
+ ..registerLazySingleton(
+ () => GetCloudMessagingTokenUseCase(
+ notificationRepository: getIt(),
+ ),
+ )
+ ..registerLazySingleton(
+ () => RequestCloudMessagingPermissionUseCase(
+ notificationRepository: getIt(),
+ ),
+ );
+```
+
+### Widgets
+
+From this point onward, your task simply involves enveloping your app within the `CloudMessagingWrapperScreen`. Subsequently, you can proceed to implement your desired actions for handling incoming notifications.
+
## Additional information
-TODO: Tell users more about the package: where to find more information, how to
-contribute to the package, how to file issues, what response they can expect
-from the package authors, and more.
+If necessary, you can access data sources, repositories, and use cases through `getIt`. Here's a helpful example:
+
+```dart
+abstract class CloudMessagingHelper {
+ static Future initMessaging() async {
+ await getIt().call(null);
+
+ final token = await getIt().call(null);
+ if (token.isOk) {
+ await notifLocalDataSource.storeToken(token: token.ok!);
+ }
+ }
+
+ static dataProcess(String? path) {
+ if (PageEnum.values.where((element) => (element.path == path)).isNotEmpty) {
+ AppRouter.goRouterNavigatorKey.currentState?.context.push(path!);
+ }
+ }
+}
+```
+
diff --git a/packages/wyatt_cloud_messaging_bloc_firebase/README.md b/packages/wyatt_cloud_messaging_bloc_firebase/README.md
index 051468b1..7df3fde5 100644
--- a/packages/wyatt_cloud_messaging_bloc_firebase/README.md
+++ b/packages/wyatt_cloud_messaging_bloc_firebase/README.md
@@ -18,39 +18,25 @@
-# Flutter - Cloud Messaging Bloc Firebase
+# Cloud Messaging Bloc Firebase Implementation
-
-
-
-
-A
-
-## Features
-
-TODO: List what your package can do. Maybe include images, gifs, or videos.
-
## Getting started
-TODO: List prerequisites and provide or point to information on how to
-start using the package.
-
-## Usage
-
-TODO: Include short and useful examples for package users. Add longer examples
-to `/example` folder.
+Simply add `wyatt_cloud_messaging_bloc_firebase` in `pubspec.yaml` , then
```dart
-const like = 'sample';
+import 'package:wyatt_cloud_messaging_bloc_firebase/wyatt_cloud_messaging_bloc_fiebase.dart';
```
## Additional information
-TODO: Tell users more about the package: where to find more information, how to
-contribute to the package, how to file issues, what response they can expect
-from the package authors, and more.
+- This package includes the implementation of the `CloudMessagingRemoteDataSource` found in the [Wyatt Cloud Messaging Bloc Base](https://git.wyatt-studio.fr/Wyatt-FOSS/-/packages/pub/wyatt_cloud_messaging_bloc_base) package, enabling the utilization of Firebase Cloud Messaging.
+- It's worth noting that this package exports [Wyatt Cloud Messaging Bloc Base](https://git.wyatt-studio.fr/Wyatt-FOSS/-/packages/pub/wyatt_cloud_messaging_bloc_base), so there's no need to import both packages.
+- This implementation is kept separate from the package to enhance dependency management efficiency.
+- All the instructions for using this package are provided in the [Wyatt Cloud Messaging Bloc Base](https://git.wyatt-studio.fr/Wyatt-FOSS/-/packages/pub/wyatt_cloud_messaging_bloc_base) package's readme.
+