diff --git a/native/qr-code/qr-code-screen.react.js b/native/account/qr-code-screen.react.js
rename from native/qr-code/qr-code-screen.react.js
rename to native/account/qr-code-screen.react.js
diff --git a/native/qr-code/sign-in-navigator.react.js b/native/account/sign-in-navigator.react.js
rename from native/qr-code/sign-in-navigator.react.js
rename to native/account/sign-in-navigator.react.js
diff --git a/native/navigation/root-navigator.react.js b/native/navigation/root-navigator.react.js
--- a/native/navigation/root-navigator.react.js
+++ b/native/navigation/root-navigator.react.js
@@ -61,6 +61,7 @@
 import LoggedOutModal from '../account/logged-out-modal.react.js';
 import CreateMissingSIWEBackupMessage from '../account/registration/missing-registration-data/missing-siwe-backup-message.react.js';
 import RegistrationNavigator from '../account/registration/registration-navigator.react.js';
+import SignInNavigator from '../account/sign-in-navigator.react.js';
 import TermsAndPrivacyModal from '../account/terms-and-privacy-modal.react.js';
 import RestoreSIWEBackup from '../backup/restore-siwe-backup.react.js';
 import ThreadPickerModal from '../calendar/thread-picker-modal.react.js';
@@ -78,7 +79,6 @@
 import CustomServerModal from '../profile/custom-server-modal.react.js';
 import KeyserverSelectionBottomSheet from '../profile/keyserver-selection-bottom-sheet.react.js';
 import LinkedDevicesBottomSheet from '../profile/linked-devices-bottom-sheet.react.js';
-import SignInNavigator from '../qr-code/sign-in-navigator.react.js';
 import RolesNavigator from '../roles/roles-navigator.react.js';
 import UserProfileBottomSheetNavigator from '../user-profile/user-profile-bottom-sheet-navigator.react.js';
 
diff --git a/native/profile/secondary-device-qr-code-scanner.react.js b/native/profile/secondary-device-qr-code-scanner.react.js
--- a/native/profile/secondary-device-qr-code-scanner.react.js
+++ b/native/profile/secondary-device-qr-code-scanner.react.js
@@ -41,13 +41,13 @@
 import { commCoreModule } from '../native-modules.js';
 import HeaderRightTextButton from '../navigation/header-right-text-button.react.js';
 import type { NavigationRoute } from '../navigation/route-names.js';
-import {
-  composeTunnelbrokerQRAuthMessage,
-  parseTunnelbrokerQRAuthMessage,
-} from '../qr-code/qr-code-utils.js';
 import { useSelector } from '../redux/redux-utils.js';
 import { useStyles, useColors } from '../themes/colors.js';
 import Alert from '../utils/alert.js';
+import {
+  composeTunnelbrokerQRAuthMessage,
+  parseTunnelbrokerQRAuthMessage,
+} from '../utils/qr-code-utils.js';
 import { deviceIsEmulator } from '../utils/url-utils.js';
 
 const barCodeTypes = [BarCodeScanner.Constants.BarCodeType.qr];
diff --git a/native/root.react.js b/native/root.react.js
--- a/native/root.react.js
+++ b/native/root.react.js
@@ -89,13 +89,6 @@
 import OrientationHandler from './navigation/orientation-handler.react.js';
 import { navStateAsyncStorageKey } from './navigation/persistance.js';
 import RootNavigator from './navigation/root-navigator.react.js';
-import {
-  composeTunnelbrokerQRAuthMessage,
-  handleSecondaryDeviceLogInError,
-  parseTunnelbrokerQRAuthMessage,
-  performBackupRestore,
-  generateQRAuthAESKey,
-} from './qr-code/qr-code-utils.js';
 import ConnectivityUpdater from './redux/connectivity-updater.react.js';
 import { DimensionsUpdater } from './redux/dimensions-updater.react.js';
 import { getPersistor } from './redux/persist.js';
@@ -109,6 +102,13 @@
 import ThemeHandler from './themes/theme-handler.react.js';
 import { alchemyKey, ethersProvider } from './utils/ethers-utils.js';
 import { neynarKey } from './utils/neynar-utils.js';
+import {
+  composeTunnelbrokerQRAuthMessage,
+  handleSecondaryDeviceLogInError,
+  parseTunnelbrokerQRAuthMessage,
+  performBackupRestore,
+  generateQRAuthAESKey,
+} from './utils/qr-code-utils.js';
 
 // Add custom items to expo-dev-menu
 import './dev-menu.js';
diff --git a/native/qr-code/qr-code-utils.js b/native/utils/qr-code-utils.js
rename from native/qr-code/qr-code-utils.js
rename to native/utils/qr-code-utils.js
--- a/native/qr-code/qr-code-utils.js
+++ b/native/utils/qr-code-utils.js
@@ -12,18 +12,18 @@
 } from 'lib/types/tunnelbroker/qr-code-auth-message-types.js';
 import { getMessageForException } from 'lib/utils/errors.js';
 
+import * as AES from './aes-crypto-module.js';
+import {
+  appOutOfDateAlertDetails,
+  unknownErrorAlertDetails,
+} from './alert-messages.js';
+import Alert from './alert.js';
 import {
   convertBytesToObj,
   convertObjToBytes,
 } from '../backup/conversion-utils.js';
 import { commCoreModule, commUtilsModule } from '../native-modules.js';
 import { persistConfig } from '../redux/persist.js';
-import * as AES from '../utils/aes-crypto-module.js';
-import {
-  appOutOfDateAlertDetails,
-  unknownErrorAlertDetails,
-} from '../utils/alert-messages.js';
-import Alert from '../utils/alert.js';
 
 function composeTunnelbrokerQRAuthMessage(
   encryptionKey: string,