diff --git a/MiniScanner.xcodeproj/project.pbxproj b/MiniScanner.xcodeproj/project.pbxproj
index 7550cd81308c57df93e6a31e9a85ebb7b4afcb70..689bf2178044c4bf32c044aa0486825e184f5ad0 100644
--- a/MiniScanner.xcodeproj/project.pbxproj
+++ b/MiniScanner.xcodeproj/project.pbxproj
@@ -7,7 +7,6 @@
 	objects = {
 
 /* Begin PBXBuildFile section */
-		53014F8D2C11A8E80071CE39 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 53014F4C2C11A8E80071CE39 /* Localizable.strings */; };
 		53014F8E2C11A8E80071CE39 /* ImageScannerController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53014F4F2C11A8E80071CE39 /* ImageScannerController.swift */; };
 		53014F8F2C11A8E80071CE39 /* RectangleFeaturesFunnel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53014F532C11A8E80071CE39 /* RectangleFeaturesFunnel.swift */; };
 		53014F902C11A8E80071CE39 /* CaptureSessionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53014F542C11A8E80071CE39 /* CaptureSessionManager.swift */; };
@@ -171,6 +170,7 @@
 		53F21F9F2C1377B900172BFC /* Tajawal-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 53F21F982C1377B900172BFC /* Tajawal-Regular.ttf */; };
 		53F21FA02C1377B900172BFC /* Tajawal-Medium.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 53F21F992C1377B900172BFC /* Tajawal-Medium.ttf */; };
 		53F21FA12C1377B900172BFC /* Tajawal-Black.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 53F21F9A2C1377B900172BFC /* Tajawal-Black.ttf */; };
+		672C46442C47B1F300497EF0 /* Localizable.xcstrings in Resources */ = {isa = PBXBuildFile; fileRef = 672C46432C47B1F300497EF0 /* Localizable.xcstrings */; };
 		B827E5196CC419E773B843E1 /* Pods_MiniScanner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E9A37DC9F9A8E3AF632DFB98 /* Pods_MiniScanner.framework */; };
 		EC0CF1FE254D8BBF00888722 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC0CF1FD254D8BBF00888722 /* AppDelegate.swift */; };
 		EC0CF200254D8BBF00888722 /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC0CF1FF254D8BBF00888722 /* SceneDelegate.swift */; };
@@ -222,7 +222,6 @@
 
 /* Begin PBXFileReference section */
 		53014F4F2C11A8E80071CE39 /* ImageScannerController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ImageScannerController.swift; sourceTree = "<group>"; };
-		53014F502C11A8E80071CE39 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = "<group>"; };
 		53014F532C11A8E80071CE39 /* RectangleFeaturesFunnel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RectangleFeaturesFunnel.swift; sourceTree = "<group>"; };
 		53014F542C11A8E80071CE39 /* CaptureSessionManager.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CaptureSessionManager.swift; sourceTree = "<group>"; };
 		53014F552C11A8E80071CE39 /* ShutterButton.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ShutterButton.swift; sourceTree = "<group>"; };
@@ -392,7 +391,7 @@
 		53F21F982C1377B900172BFC /* Tajawal-Regular.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Tajawal-Regular.ttf"; sourceTree = "<group>"; };
 		53F21F992C1377B900172BFC /* Tajawal-Medium.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Tajawal-Medium.ttf"; sourceTree = "<group>"; };
 		53F21F9A2C1377B900172BFC /* Tajawal-Black.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "Tajawal-Black.ttf"; sourceTree = "<group>"; };
-		672C46412C47AD7200497EF0 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/Localizable.strings; sourceTree = "<group>"; };
+		672C46432C47B1F300497EF0 /* Localizable.xcstrings */ = {isa = PBXFileReference; lastKnownFileType = text.json.xcstrings; path = Localizable.xcstrings; sourceTree = "<group>"; };
 		E8AF4FB39674DF589D719DCF /* Pods-MiniScanner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MiniScanner.release.xcconfig"; path = "Target Support Files/Pods-MiniScanner/Pods-MiniScanner.release.xcconfig"; sourceTree = "<group>"; };
 		E9A37DC9F9A8E3AF632DFB98 /* Pods_MiniScanner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MiniScanner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		EC0CF1FA254D8BBF00888722 /* MiniScanner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MiniScanner.app; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -453,7 +452,6 @@
 		53014F4B2C11A8E80071CE39 /* CustomWeScan */ = {
 			isa = PBXGroup;
 			children = (
-				53014F4C2C11A8E80071CE39 /* Localizable.strings */,
 				53014F4F2C11A8E80071CE39 /* ImageScannerController.swift */,
 				53014F522C11A8E80071CE39 /* Scan */,
 				53014F5C2C11A8E80071CE39 /* Extensions */,
@@ -914,6 +912,14 @@
 			path = Fonts;
 			sourceTree = "<group>";
 		};
+		672C46422C47B1E400497EF0 /* Localization */ = {
+			isa = PBXGroup;
+			children = (
+				672C46432C47B1F300497EF0 /* Localizable.xcstrings */,
+			);
+			path = Localization;
+			sourceTree = "<group>";
+		};
 		98E49D3F46C8E62718825860 /* Pods */ = {
 			isa = PBXGroup;
 			children = (
@@ -1022,6 +1028,7 @@
 		EC8A9B0C254DC30800F9AF99 /* Supporting Files */ = {
 			isa = PBXGroup;
 			children = (
+				672C46422C47B1E400497EF0 /* Localization */,
 				53A4788B2C35BB700073E956 /* Frameworks */,
 				539EF14D2C2AA43B0041AE1F /* ara.traineddata */,
 				539996552C27124B00671340 /* FontChooserContainerView.swift */,
@@ -1177,6 +1184,7 @@
 				53014FAE2C11A8E80071CE39 /* rotate@2x.png in Resources */,
 				53014FB32C11A8E80071CE39 /* flash@3x.png in Resources */,
 				53CD5F622C15A6210010424B /* SettingViewController.xib in Resources */,
+				672C46442C47B1F300497EF0 /* Localizable.xcstrings in Resources */,
 				539EF14E2C2AA43B0041AE1F /* ara.traineddata in Resources */,
 				53F21F9E2C1377B900172BFC /* Tajawal-ExtraLight.ttf in Resources */,
 				539996352C26D41300671340 /* OCRViewController.xib in Resources */,
@@ -1186,7 +1194,6 @@
 				53BEB1482C2968F8005A3567 /* FolderSelectCollectionViewCell.xib in Resources */,
 				53F21F9F2C1377B900172BFC /* Tajawal-Regular.ttf in Resources */,
 				53014FB12C11A8E80071CE39 /* flashUnavailable.png in Resources */,
-				53014F8D2C11A8E80071CE39 /* Localizable.strings in Resources */,
 				EC702541254E1E7500BE1958 /* ClassicWalkthroughViewController.xib in Resources */,
 				53F21F922C1248EC00172BFC /* FolderCollectionViewCell.xib in Resources */,
 				ECA1FAA1254DEA6A0081F00B /* DocumentPreview.storyboard in Resources */,
@@ -1398,15 +1405,6 @@
 /* End PBXSourcesBuildPhase section */
 
 /* Begin PBXVariantGroup section */
-		53014F4C2C11A8E80071CE39 /* Localizable.strings */ = {
-			isa = PBXVariantGroup;
-			children = (
-				53014F502C11A8E80071CE39 /* en */,
-				672C46412C47AD7200497EF0 /* ar */,
-			);
-			name = Localizable.strings;
-			sourceTree = "<group>";
-		};
 		EC0CF208254D8BC000888722 /* LaunchScreen.storyboard */ = {
 			isa = PBXVariantGroup;
 			children = (
diff --git a/MiniScanner/Supporting Files/Frameworks/CustomWeScan/ar.lproj/Localizable.strings b/MiniScanner/Supporting Files/Frameworks/CustomWeScan/ar.lproj/Localizable.strings
deleted file mode 100644
index ec645987447f59bb264e5c7cda8af4348a54cb42..0000000000000000000000000000000000000000
--- a/MiniScanner/Supporting Files/Frameworks/CustomWeScan/ar.lproj/Localizable.strings	
+++ /dev/null
@@ -1,21 +0,0 @@
-/* 
-    localizable.strings
-    WeScanSampleProject
-
-    Created by Boris Emorine on 2/27/18.
-    Copyright © 2018 WeTransfer. All rights reserved.
-*/
-
-/* The "Next" button on the right side of the navigation bar on the Edit screen. */
-"wescan.edit.button.next" = "Next";
-
-/* The title on the navigation bar of the Edit screen. */
-"wescan.edit.title" = "Edit Scan";
-
-/* The title on the navigation bar of the Review screen. */
-"wescan.review.title" = "Review";
-
-/* The button titles on the Scanning screen. */
-"wescan.scanning.cancel" = "Cancel";
-"wescan.scanning.auto" = "Auto";
-"wescan.scanning.manual" = "Manual";
diff --git a/MiniScanner/Supporting Files/Frameworks/CustomWeScan/en.lproj/Localizable.strings b/MiniScanner/Supporting Files/Frameworks/CustomWeScan/en.lproj/Localizable.strings
deleted file mode 100644
index ec645987447f59bb264e5c7cda8af4348a54cb42..0000000000000000000000000000000000000000
--- a/MiniScanner/Supporting Files/Frameworks/CustomWeScan/en.lproj/Localizable.strings	
+++ /dev/null
@@ -1,21 +0,0 @@
-/* 
-    localizable.strings
-    WeScanSampleProject
-
-    Created by Boris Emorine on 2/27/18.
-    Copyright © 2018 WeTransfer. All rights reserved.
-*/
-
-/* The "Next" button on the right side of the navigation bar on the Edit screen. */
-"wescan.edit.button.next" = "Next";
-
-/* The title on the navigation bar of the Edit screen. */
-"wescan.edit.title" = "Edit Scan";
-
-/* The title on the navigation bar of the Review screen. */
-"wescan.review.title" = "Review";
-
-/* The button titles on the Scanning screen. */
-"wescan.scanning.cancel" = "Cancel";
-"wescan.scanning.auto" = "Auto";
-"wescan.scanning.manual" = "Manual";
diff --git a/MiniScanner/Supporting Files/Localization/Localizable.xcstrings b/MiniScanner/Supporting Files/Localization/Localizable.xcstrings
new file mode 100644
index 0000000000000000000000000000000000000000..5dbe50f738d2bf1078bcce56ebb41eb0508399ca
--- /dev/null
+++ b/MiniScanner/Supporting Files/Localization/Localizable.xcstrings	
@@ -0,0 +1,96 @@
+{
+  "sourceLanguage" : "en",
+  "strings" : {
+    "wescan.edit.button.done" : {
+      "comment" : "A generic done button",
+      "extractionState" : "extracted_with_value",
+      "localizations" : {
+        "en" : {
+          "stringUnit" : {
+            "state" : "new",
+            "value" : "Done"
+          }
+        }
+      }
+    },
+    "wescan.edit.button.next" : {
+      "extractionState" : "manual",
+      "localizations" : {
+        "en" : {
+          "stringUnit" : {
+            "state" : "translated",
+            "value" : "Next"
+          }
+        }
+      }
+    },
+    "wescan.edit.button.save" : {
+      "comment" : "Save button",
+      "extractionState" : "extracted_with_value",
+      "localizations" : {
+        "en" : {
+          "stringUnit" : {
+            "state" : "new",
+            "value" : "Save"
+          }
+        }
+      }
+    },
+    "wescan.edit.title" : {
+      "extractionState" : "manual",
+      "localizations" : {
+        "en" : {
+          "stringUnit" : {
+            "state" : "translated",
+            "value" : "Edit Scan"
+          }
+        }
+      }
+    },
+    "wescan.review.title" : {
+      "extractionState" : "manual",
+      "localizations" : {
+        "en" : {
+          "stringUnit" : {
+            "state" : "translated",
+            "value" : "Review"
+          }
+        }
+      }
+    },
+    "wescan.scanning.auto" : {
+      "extractionState" : "manual",
+      "localizations" : {
+        "en" : {
+          "stringUnit" : {
+            "state" : "translated",
+            "value" : "Auto"
+          }
+        }
+      }
+    },
+    "wescan.scanning.cancel" : {
+      "extractionState" : "manual",
+      "localizations" : {
+        "en" : {
+          "stringUnit" : {
+            "state" : "translated",
+            "value" : "Cancel"
+          }
+        }
+      }
+    },
+    "wescan.scanning.manual" : {
+      "extractionState" : "manual",
+      "localizations" : {
+        "en" : {
+          "stringUnit" : {
+            "state" : "translated",
+            "value" : "Manual"
+          }
+        }
+      }
+    }
+  },
+  "version" : "1.0"
+}
\ No newline at end of file