diff --git a/lib/main.dart b/lib/main.dart
index cff07951456d6259c713b2c40209db7c76779cd4..28f58a42ebac720500f78ceb0c281cb3fde11f9b 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -14,12 +14,8 @@
 // along with this program.  If not, see <https://www.gnu.org/licenses/>.
 
 import 'dart:async';
-import 'dart:io';
 import 'package:flutter/services.dart';
 import 'package:gecko/globals.dart';
-import 'package:gecko/models/chest_data.dart';
-import 'package:gecko/models/g1_wallets_list.dart';
-import 'package:gecko/models/wallet_data.dart';
 import 'package:gecko/providers/chest_provider.dart';
 import 'package:gecko/providers/duniter_indexer.dart';
 import 'package:gecko/providers/generate_wallets.dart';
@@ -36,15 +32,13 @@ import 'package:flutter/material.dart';
 import 'package:gecko/screens/myWallets/wallets_home.dart';
 import 'package:gecko/screens/search.dart';
 import 'package:gecko/screens/search_result.dart';
-import 'package:gecko/widgets/wallet_header.dart';
-import 'package:hive_flutter/hive_flutter.dart';
+
 import 'package:provider/provider.dart';
 import 'package:flutter/foundation.dart';
 import 'package:responsive_framework/responsive_framework.dart';
 import 'package:sentry_flutter/sentry_flutter.dart';
 import 'package:graphql_flutter/graphql_flutter.dart';
 import 'package:easy_localization/easy_localization.dart';
-import 'package:gecko/models/wallet_header_data.dart';
 
 const bool enableSentry = true;
 
@@ -59,30 +53,12 @@ Future<void> main() async {
   final homeProvider = HomeProvider();
   // DuniterIndexer _duniterIndexer = DuniterIndexer();
 
+  // Initialize Hive
   await initHiveForFlutter();
   await homeProvider.initHive();
-  configBox = await Hive.openBox("configBox");
 
   appVersion = await homeProvider.getAppVersion();
 
-  // Initialize Hive
-  await Hive.initFlutter();
-
-  // Register Hive adapters
-  Hive.registerAdapter(WalletHeaderDataAdapter());
-  Hive.registerAdapter(BigIntAdapter());
-  Hive.registerAdapter(WalletDataAdapter());
-  Hive.registerAdapter(ChestDataAdapter());
-  Hive.registerAdapter(G1WalletsListAdapter());
-  Hive.registerAdapter(IdAdapter());
-  Hive.registerAdapter(IdtyStatusAdapter());
-
-  // Open required boxes synchronously
-  chestBox = await Hive.openBox<ChestData>("chestBox");
-
-  // Initialize other boxes asynchronously
-  unawaited(WalletHeader.initializeBox());
-
   HttpOverrides.global = MyHttpOverrides();
 
   if (kReleaseMode && enableSentry) {
diff --git a/lib/providers/home.dart b/lib/providers/home.dart
index 39dc3ac0eb9452229e8e3ca11eac46e6c4baeaf7..cc2aa39739d361563ce6e155f8c0a284391f512d 100644
--- a/lib/providers/home.dart
+++ b/lib/providers/home.dart
@@ -14,6 +14,11 @@ import 'package:path_provider/path_provider.dart' as pp;
 import 'package:package_info_plus/package_info_plus.dart';
 import 'package:path_provider/path_provider.dart';
 import 'package:provider/provider.dart';
+import 'package:gecko/models/chest_data.dart';
+import 'package:gecko/models/g1_wallets_list.dart';
+import 'package:gecko/models/wallet_data.dart';
+import 'package:gecko/widgets/wallet_header.dart';
+import 'package:gecko/models/wallet_header_data.dart';
 
 class HomeProvider with ChangeNotifier {
   bool? isSearching;
@@ -55,6 +60,22 @@ class HomeProvider with ChangeNotifier {
     if (!await avatarsDirectory.exists()) {
       await avatarsDirectory.create();
     }
+
+    // Register Hive adapters
+    Hive.registerAdapter(WalletHeaderDataAdapter());
+    Hive.registerAdapter(BigIntAdapter());
+    Hive.registerAdapter(WalletDataAdapter());
+    Hive.registerAdapter(ChestDataAdapter());
+    Hive.registerAdapter(G1WalletsListAdapter());
+    Hive.registerAdapter(IdAdapter());
+    Hive.registerAdapter(IdtyStatusAdapter());
+
+    // Open required boxes synchronously
+    chestBox = await Hive.openBox<ChestData>("chestBox");
+    configBox = await Hive.openBox("configBox");
+
+    // Initialize other boxes asynchronously
+    unawaited(WalletHeader.initializeBox());
   }
 
   Future changeCurrencyUnit(BuildContext context) async {