diff --git a/assets/images/background_image_4x.png b/assets/images/background_image_4x.png
new file mode 100644
index 0000000000000000000000000000000000000000..ec53e2066d4fa69bc8c99cb2c19d4f25a5b167e2
Binary files /dev/null and b/assets/images/background_image_4x.png differ
diff --git a/assets/logos/exide_logo.svg b/assets/logos/exide_logo.svg
new file mode 100644
index 0000000000000000000000000000000000000000..bf3109925ab5d7a3bd62dbceac6e887a4a72590b
--- /dev/null
+++ b/assets/logos/exide_logo.svg
@@ -0,0 +1,7 @@
+<svg width="219" height="59" viewBox="0 0 219 59" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M28.9039 2.24923L28.4415 3.52932H16.3356H4.22972L2.29614 11.5086C1.20325 15.9462 0.236461 19.8292 0.152393 20.1705C-0.0157445 20.7252 0.362564 20.8532 2.12801 20.8106H4.35582L4.39786 39.7986L4.43989 58.7867L21.4218 58.9147L38.4456 59L40.7575 50.6794L43.0694 42.3588H32.8551H22.5987L22.7248 40.524L22.8509 38.7319L30.8795 38.6039L38.908 38.5185L40.7996 31.35L42.6911 24.2242L32.6449 24.0961L22.6407 24.0108V22.304V20.5972H30.5432H38.4456L41.1779 10.7832L43.9521 0.969139H36.6382H29.3242L28.9039 2.24923Z" fill="#EC1B27"/>
+<path d="M203.587 2.24923L202.915 3.52932H191.019H179.081L178.829 4.46806C178.367 6.13218 174.794 20.5546 174.794 20.7252C174.794 20.8106 175.761 20.8106 176.896 20.6826L178.997 20.4692V39.7559V59L196.147 58.9147L213.255 58.7867L215.231 51.7461C216.324 47.8632 217.333 44.1936 217.459 43.5109L217.753 42.3588H207.581H197.45L197.577 40.524L197.703 38.7319L205.689 38.6465L213.676 38.5612L215.609 31.3927L217.501 24.2242L207.497 24.0961L197.492 24.0108V22.304V20.5972L205.353 20.5119L213.213 20.3839L215.651 11.8499C216.954 7.15625 218.173 2.80394 218.299 2.12122L218.594 0.969139H211.406H204.26L203.587 2.24923Z" fill="#EC1B27"/>
+<path d="M56.1778 3.44402C50.8815 3.48668 46.594 3.65736 46.594 3.7427C46.594 3.87071 49.7045 10.0152 53.5297 17.397L60.4653 30.7953L53.1093 44.1936C49.074 51.5755 45.6693 57.8906 45.5011 58.2746C45.2489 58.9573 46.0896 59 55.2531 59H65.2993L68.4098 52.1728C70.1332 48.4179 71.6465 45.3457 71.7726 45.3457C71.8987 45.3457 73.4119 48.4179 75.1353 52.1728L78.2038 59H88.2921C97.7498 59 98.3803 58.9573 98.0861 58.2319C97.9599 57.8479 94.7233 51.5755 90.8982 44.3643C87.1151 37.1104 84.0046 31.0513 84.0046 30.8806C84.0046 30.6673 86.947 24.4802 90.5199 17.141C94.0928 9.75913 97.0352 3.65736 97.0352 3.52935C97.0352 3.40134 92.5796 3.40134 87.1151 3.52935L77.195 3.7427L74.715 9.71646C73.3278 13.002 72.0668 15.8182 71.8987 15.9889C71.7305 16.1596 70.3434 13.4287 68.8722 9.88714C67.359 6.34555 66.0559 3.44402 65.9298 3.40134C65.8037 3.35867 61.4321 3.35867 56.1778 3.44402Z" fill="#EC1B27"/>
+<path d="M110.421 3.40129C105.377 3.48663 101.257 3.61464 101.257 3.69999C101.257 3.78532 100.332 7.66827 99.1554 12.3193C98.0205 17.013 97.0537 20.8532 97.0537 20.8532C97.0537 20.8959 98.0205 20.8532 99.1554 20.7252L101.257 20.5545V39.7986V59H110.505H119.752V31.0513C119.752 15.6902 119.71 3.14528 119.668 3.18795C119.584 3.27328 115.423 3.35863 110.421 3.40129Z" fill="#EC1B27"/>
+<path d="M127.139 4.45405C126.634 6.33152 123.104 20.5405 123.104 20.7539C123.104 20.8819 124.028 20.8392 125.205 20.7112L127.307 20.4552L127.391 39.6139L127.517 58.7726L138.026 58.9006C150.132 59.0286 153.284 58.6019 158.412 56.1271C160.892 54.9323 162.322 53.8229 165.138 50.9214C170.77 45.161 173.208 39.1872 173.25 31.2506C173.292 18.4497 165.096 7.4836 153.116 4.36871C150.3 3.64332 148.45 3.51531 138.656 3.51531H127.391L127.139 4.45405ZM151.687 21.6499C155.764 23.8261 157.698 29.7572 156.1 35.3469C154.797 39.9126 150.636 43.0702 146.306 42.6861L144.751 42.5581L144.625 32.104C144.583 26.3863 144.625 21.3939 144.751 21.0952C144.919 20.6259 145.592 20.5405 147.82 20.7966C149.375 20.9672 151.098 21.3513 151.687 21.6499Z" fill="#EC1B27"/>
+</svg>
diff --git a/lib/appLocalization/language_key.dart b/lib/appLocalization/language_key.dart
index 307a03de8dd4319c8c2271a0fcf21263277a06f2..1cadc6fb852fbd1e604383a6c04f347fc06faaa8 100644
--- a/lib/appLocalization/language_key.dart
+++ b/lib/appLocalization/language_key.dart
@@ -2,6 +2,19 @@
 const String message = "message";
 const String name = "name";
 
+/// language selection screen
+const String selectLanguage = "selectLanguage";
+const String selectLanguageDescription = "selectLanguageDescription";
+const String saveMyPreference = "saveMyPreference";
+
+/// login screen
+const String welcomeText = "welcomeText";
+const String pleaseLoginToYourAccount = "pleaseLoginToYourAccount";
+const String dealerCodeRWD = "dealerCodeRWD";
+const String next = "next";
+const String yourRegisteredMobileNumber = "yourRegisteredMobileNumber";
+const String loginHint = "loginHint";
+
 ///Verify otp texts
 const String otpTitle = "otpTitle";
 const String otpSubTitle = "otpSubTitle";
diff --git a/lib/appLocalization/languages.dart b/lib/appLocalization/languages.dart
index 0856a691b491957e3536b6072c6a2e67d1ae3114..5756f28fa6c5457d748f86d9d531cde4f13e0dcc 100644
--- a/lib/appLocalization/languages.dart
+++ b/lib/appLocalization/languages.dart
@@ -11,9 +11,21 @@ class Languages extends Translations {
 
   /// English language constants
   Map<String, String> englishConstants = {
-    message: "What is the project name?",
     name: "Exide CRR",
 
+    /// language selection screen
+    selectLanguage : "Select Language",
+    selectLanguageDescription : "Choose your preferred language for the app. You can adjust it later.",
+    saveMyPreference : "Save My Preference",
+
+    /// login screen
+    welcomeText : "Welcome to Exide CRR App",
+    pleaseLoginToYourAccount : "Please login to your account.",
+    dealerCodeRWD : "Dealer (RWD) code",
+    next : "Next",
+    yourRegisteredMobileNumber :"Your Registered Mobile Number",
+    loginHint :"Enter Code Here",
+
     ///Verify otp screen
     otpTitle:"Verify OTP",
     otpSubTitle:"Please verify the OTP which have been sent your registered mobile number.",
@@ -31,9 +43,21 @@ class Languages extends Translations {
 
   /// Hindi language constants
   Map<String, String> hindiConstants = {
-    message: "प्रोजेक्ट का नाम क्या है?",
     name: "एक्साइड सीआरआर",
 
+    /// language selection screen
+    selectLanguage: "भाषा चुने",
+    selectLanguageDescription : "ऐप के लिए अपनी पसंदीदा भाषा चुनें। आप इसे बाद में समायोजित कर सकते हैं.",
+    saveMyPreference : "मेरी प्राथमिकता सहेजें",
+
+    /// login screen
+    welcomeText : "एक्साइड सीआरआर ऐप में आपका स्वागत है",
+    pleaseLoginToYourAccount : "कृपया अपने खाते लॉग इन करें।.",
+    dealerCodeRWD : "डीलर (आरडब्ल्यूडी) कोड",
+    next : "अगला",
+    yourRegisteredMobileNumber : "आपका पंजीकृत मोबाइल नंबर",
+    loginHint : "यहाँ कोड दर्ज करें",
+
     ///Verify otp screen
     otpTitle:"ओटीपी सत्यापित करें",
     otpSubTitle:"कृपया उस ओटीपी को सत्यापित करें जो आपके पंजीकृत मोबाइल नंबर पर भेजा गया है।",
diff --git a/lib/constants/app_images.dart b/lib/constants/app_images.dart
new file mode 100644
index 0000000000000000000000000000000000000000..7b91f008c64b1703092d533102b71fa68af48e80
--- /dev/null
+++ b/lib/constants/app_images.dart
@@ -0,0 +1,8 @@
+class AppImages {
+  /// app logos
+  static const String appLogo = 'assets/logos/exide_logo.svg';
+
+  /// app images
+  static const String backgroundImage = 'assets/images/background_image_4x.png';
+
+}
\ No newline at end of file
diff --git a/lib/constants/enums.dart b/lib/constants/enums.dart
index 8c2f5bb1fe3142983fc12eb5f0cbeec5004d2097..bf497d36e3efa80bb5861da0b40b3f0f8ddf5867 100644
--- a/lib/constants/enums.dart
+++ b/lib/constants/enums.dart
@@ -14,3 +14,5 @@ enum PlatformType {android, ios, web}
 enum DeviceType {mobile, tablet, web}
 
 enum InputType {text, number, spaceNotAccepted, specialCharacterNotAccepted}
+
+enum LanguageType{English, Hindi}
\ No newline at end of file
diff --git a/lib/constants/firebaseConstants/field_constants.dart b/lib/constants/firebaseConstants/field_constants.dart
new file mode 100644
index 0000000000000000000000000000000000000000..824af0a9d3d61bf60e34b9533c2907deec08f5b3
--- /dev/null
+++ b/lib/constants/firebaseConstants/field_constants.dart
@@ -0,0 +1,5 @@
+class FieldConstants {
+    static const String code = "code";
+
+}
+
diff --git a/lib/constants/firebaseConstants/firebase_collections_constants.dart b/lib/constants/firebaseConstants/firebase_collections_constants.dart
new file mode 100644
index 0000000000000000000000000000000000000000..c238c5fcaa17d16ce0d6a72aa28287f69e395c03
--- /dev/null
+++ b/lib/constants/firebaseConstants/firebase_collections_constants.dart
@@ -0,0 +1,5 @@
+class FirebaseCollectionConstant {
+  ///fireStore collection name
+  static const String dealers = "dealers";
+
+}
diff --git a/lib/controller/base_controller.dart b/lib/controller/base_controller.dart
index a6dcb486d145a158c57edc4664f577e9f27a30ed..0059bb257744b9556b7e792192bea40d90fd05d7 100644
--- a/lib/controller/base_controller.dart
+++ b/lib/controller/base_controller.dart
@@ -4,6 +4,7 @@ import 'dart:async';
 import 'dart:io' show Platform;
 import 'package:cloud_firestore/cloud_firestore.dart';
 import 'package:dio/dio.dart';
+import 'package:exide_crr/constants/enums.dart';
 import 'package:exide_crr/data/app_env.dart';
 import 'package:exide_crr/data/remote_config_helper.dart';
 import 'package:exide_crr/preferences/app_shared_preferences.dart';
@@ -32,6 +33,10 @@ class BaseController extends GetxController with WidgetsBindingObserver {
 
 
 
+  //// exide app
+  RxString selectedLanguage = ''.obs;
+  ////
+
   String encryptedSseId = "";
   String userName = "";
   String fullName = "";
@@ -152,9 +157,22 @@ class BaseController extends GetxController with WidgetsBindingObserver {
     Miscellaneous.logMessage(tag, " ------ BaseController init -----");
     getAppVersion();
     getPackageInfo();
+     await checkForSelectedLanguage();
     getFireStoreInstance(AppEnvironment.appEnvironmentSetup.name);
   }
 
+  /// check for initial language for app
+  checkForSelectedLanguage() async {
+    String localSelectedLanguage = await PreferenceHelper.getPreferenceData(PreferenceHelper.selectedLanguage) ?? "";
+    if(localSelectedLanguage == "" || localSelectedLanguage == LanguageType.English.name){
+      Get.updateLocale(const Locale("en","US"));
+      selectedLanguage.value = LanguageType.English.name;
+    }else{
+      Get.updateLocale(const Locale("hi","IN"));
+      selectedLanguage.value = LanguageType.Hindi.name;
+    }
+  }
+
   void getPackageInfo() async {
     PackageInfo packageInfo = await PackageInfo.fromPlatform();
     buildNumber = packageInfo.buildNumber;
diff --git a/lib/customWidget/button_widget.dart b/lib/customWidget/button_widget.dart
index 262f9ecf5fc8920b5df433545b5f712e0762ccab..c3bd95bf38e3b43ec81f9806c1cdd4ee1cfdad89 100644
--- a/lib/customWidget/button_widget.dart
+++ b/lib/customWidget/button_widget.dart
@@ -49,7 +49,7 @@ class CustomButton extends StatelessWidget {
     this.isActive = false,
     this.showSuffixIcon = false,
     this.backgroundColor = AppColor.blackColor,
-    this.activeBackgroundColor = AppColor.blackColor,
+    this.activeBackgroundColor = AppColor.darkRed,
     this.foregroundColor = AppColor.whiteColor,
     this.borderColor = AppColor.transparent,
   }) : super(key: key);
@@ -72,11 +72,11 @@ class CustomButton extends StatelessWidget {
             decoration: BoxDecoration(
                 color: isActive
                     ? activeBackgroundColor
-                    : AppColor.inActiveButtonColor,
+                    : AppColor.darkRed.withOpacity(0.3),
                 borderRadius: BorderRadius.circular(borderRadius),
                 border: Border.all(color: borderColor, width: 1)),
             child: isLoading
-                ? HelperClass.spinkit
+                ? HelperClass.spinKit
                 : Row(
                     crossAxisAlignment: CrossAxisAlignment.center,
                     mainAxisSize: MainAxisSize.min,
diff --git a/lib/customWidget/customOnboardScreen/common_onboard_screen.dart b/lib/customWidget/customOnboardScreen/common_onboard_screen.dart
new file mode 100644
index 0000000000000000000000000000000000000000..0534275d3385f49538f32208f96582ee994c6963
--- /dev/null
+++ b/lib/customWidget/customOnboardScreen/common_onboard_screen.dart
@@ -0,0 +1,47 @@
+import 'package:exide_crr/appbar/empty_app_bar.dart';
+import 'package:exide_crr/constants/app_images.dart';
+import 'package:exide_crr/res/app_color_text_size.dart';
+import 'package:flutter/material.dart';
+
+class CommonOnboardScreen extends StatelessWidget {
+  final Widget child;
+  const CommonOnboardScreen({super.key, required this.child});
+
+  @override
+  Widget build(BuildContext context) {
+    return Scaffold(
+      appBar: const EmptyAppBar(),
+      backgroundColor: AppColor.backgroundColor,
+      body: Column(
+        children: [
+          Expanded(
+            child: Stack(
+              children: [
+                Image.asset(
+                  AppImages.backgroundImage,
+                ),
+                Positioned(
+                  // top: 250,
+                  bottom: 0,
+                  left: 0,
+                  right: 0,
+                  child: Container(
+                    height: 546,
+                    decoration: BoxDecoration(
+                      color: AppColor.white,
+                      borderRadius: const BorderRadius.only(
+                        topLeft: Radius.circular(20),
+                        topRight: Radius.circular(20),
+                      ),
+                    ),
+                    child: child,
+                  ),
+                ),
+              ],
+            ),
+          ),
+        ],
+      ),
+    );
+  }
+}
diff --git a/lib/customWidget/custom_text_field.dart b/lib/customWidget/custom_text_field.dart
index f344670f2c74b404e4bf2a1fe99a93700e6026f3..00d7e4f3600db3ad69e405b0916b72e2d42eb46c 100644
--- a/lib/customWidget/custom_text_field.dart
+++ b/lib/customWidget/custom_text_field.dart
@@ -38,6 +38,7 @@ class CustomTextField extends StatelessWidget {
     this.rightMarginTextFieldTitle = 0,
     this.mandatoryText,
     this.readOnly = false,
+    this.autoFocus = false,
   }) : super(key: key);
 
   //Text field title text
@@ -62,6 +63,9 @@ class CustomTextField extends StatelessWidget {
   ///filed hide unHide.
   bool isPasswordHide = false;
 
+  /// request for autofocus when pages lodes
+  bool autoFocus = false;
+
   /// max lines to define height of text field
   int noOfLines = 1;
 
@@ -148,134 +152,109 @@ class CustomTextField extends StatelessWidget {
           Container(
             margin: EdgeInsets.only(top: topMarginTextField),
             decoration: BoxDecoration(
-              borderRadius: BorderRadius.circular(8.w),
-
-              ///Check API success or not
-              // border: Border.all(
-              //   color: !isSuccess
-              //       ? AppColor.primaryRedColor
-              //       : AppColor.transparent,
-              //   width: 2,
-              // )
-            ),
-            child: OutlineGradientButton(
-              padding: EdgeInsets.only(
-                left: 1.w,
-                top: 1.h,
-                right: 1.w,
-                bottom: 1.h,
-              ),
-              strokeWidth: 1.h,
-              gradient: LinearGradient(
-                begin: const Alignment(-0.68, -0.86),
-                end: const Alignment(2.04, 2.37),
-                colors: !isSuccess
-                    ? [AppColor.gradientFirstColor, AppColor.gradientFirstColor]
-                    : [
-                        AppColor.gradientFirstColor,
-                        AppColor.gradientSecondColor
-                      ],
-              ),
-              corners: const Corners(
-                topLeft: Radius.circular(8),
-                topRight: Radius.circular(8),
-                bottomLeft: Radius.circular(8),
-                bottomRight: Radius.circular(8),
-              ),
-              child: TextFormField(
-                readOnly: readOnly!,
-                focusNode: focusNode,
-                controller: textEditingController,
-                keyboardType: textInputType,
-                cursorColor: AppColor.greyColor,
-
-                cursorHeight: 20,
-                maxLines: noOfLines,
-                textInputAction: inputAction,
-                autocorrect: false,
-                inputFormatters: inputType == InputType.number.name
-                    ? [
-                        FilteringTextInputFormatter.digitsOnly,
-                        LengthLimitingTextInputFormatter(maxLength),
-                        FilteringTextInputFormatter.deny(RegExp(r'\s')),
-                        FilteringTextInputFormatter.deny(
-                            RegExp(r'[!@#$%^&*(),.?":{}|<>]'))
-                      ]
-                    : inputType == InputType.spaceNotAccepted.name
-                        ? [FilteringTextInputFormatter.deny(RegExp(r'\s'))]
-                        : inputType ==
-                                InputType.specialCharacterNotAccepted.name
-                            ? [
-                                FilteringTextInputFormatter.deny(
-                                    RegExp(r'[!@#$%^&*(),.?":{}|<>]'))
-                              ]
-                            : null,
-
-                ///Check password filed or general
-                obscureText: isPasswordField ? isPasswordHide : false,
-                style: isSuccess
-                    ? Styles.textFieldStyle
-                    : Styles.textFieldErrorStyle,
-                decoration: InputDecoration(
-                  contentPadding:
-                      EdgeInsets.symmetric(vertical: 20.h, horizontal: 12),
-                  hintStyle: Styles.hintTextFieldStyle,
-                  hintText: hintText,
-
-                  /// check focus on for selected text filed
-                  fillColor:
-                      isFocus ? AppColor.whiteColor : AppColor.whiteColor,
-                  filled: false,
-                  border: OutlineInputBorder(
-                    borderRadius: BorderRadius.circular(10.h),
-                    borderSide: BorderSide.none,
-                  ),
-                  enabledBorder: OutlineInputBorder(
-                    borderRadius: BorderRadius.circular(10.h),
-                    borderSide: BorderSide.none,
-                  ),
-                  focusedBorder: OutlineInputBorder(
-                    borderRadius: BorderRadius.circular(10.h),
-                    borderSide: BorderSide.none,
-                  ),
-                  // errorBorder: CustomBorder.enabledBorder,
-                  // focusedErrorBorder: CustomBorder.focusedErrorBorder,
-                  // errorStyle: TextStyle(
-                  //   color: AppColor.redLight,
-                  //   fontSize: 12,
-                  // ),
-
-                  /// Visible if password field is [True]
-                  suffixIcon: isPasswordFieldEmpty
-                      ? GestureDetector(
-                          onTap: onSuffixIconClicked,
-                          child: Container(
-                            margin: const EdgeInsets.symmetric(horizontal: 12),
-                            child: Image.asset(
-                              isPasswordHide
-                                  ? ImageConstants.passwordHideEye
-                                  : ImageConstants.passwordUnhideEye,
-                              height: 12,
-                              width: 12,
-                              color: isSuccess
-                                  ? AppColor.greyColor
-                                  : AppColor.errorTextColor,
-                            ),
-                          ),
-                        )
-                      : null,
-
-                  /// Visible if password field is [True]
-                  //   prefixIcon: isPasswordField ? Icon(
-                  //     Icons.lock,
-                  //     size: 16,
-                  //     color: AppColor.greyColor,
-                  //   ) : null,
+                borderRadius: BorderRadius.circular(10),
+                color: AppColor.lightWhite
+
+                ///Check API success or not
+                // border: Border.all(
+                //   color: !isSuccess
+                //       ? AppColor.primaryRedColor
+                //       : AppColor.transparent,
+                //   width: 2,
+                // )
+                ),
+            child: TextFormField(
+              autofocus: autoFocus,
+              readOnly: readOnly!,
+              focusNode: focusNode,
+              controller: textEditingController,
+              keyboardType: textInputType,
+              cursorColor: AppColor.greyColor,
+
+              cursorHeight: 20,
+              maxLines: noOfLines,
+              textInputAction: inputAction,
+              autocorrect: false,
+              inputFormatters: inputType == InputType.number.name
+                  ? [
+                      FilteringTextInputFormatter.digitsOnly,
+                      LengthLimitingTextInputFormatter(maxLength),
+                      FilteringTextInputFormatter.deny(RegExp(r'\s')),
+                      FilteringTextInputFormatter.deny(
+                          RegExp(r'[!@#$%^&*(),.?":{}|<>]'))
+                    ]
+                  : inputType == InputType.spaceNotAccepted.name
+                      ? [FilteringTextInputFormatter.deny(RegExp(r'\s'))]
+                      : inputType == InputType.specialCharacterNotAccepted.name
+                          ? [
+                              FilteringTextInputFormatter.deny(
+                                  RegExp(r'[!@#$%^&*(),.?":{}|<>]'))
+                            ]
+                          : null,
+
+              ///Check password filed or general
+              obscureText: isPasswordField ? isPasswordHide : false,
+              style: isSuccess
+                  ? Styles.textFieldStyle
+                  : Styles.textFieldErrorStyle,
+              decoration: InputDecoration(
+                contentPadding:
+                    const EdgeInsets.symmetric(vertical: 16, horizontal: 16),
+                hintStyle: Styles.hintTextFieldStyle,
+                hintText: hintText,
+
+                /// check focus on for selected text filed
+                fillColor: isFocus ? AppColor.whiteColor : AppColor.whiteColor,
+                filled: false,
+                border: OutlineInputBorder(
+                  borderRadius: BorderRadius.circular(10.h),
+                  borderSide: BorderSide.none,
+                ),
+                enabledBorder: OutlineInputBorder(
+                  borderRadius: BorderRadius.circular(10.h),
+                  borderSide: BorderSide.none,
                 ),
-                onFieldSubmitted: onSubmit,
-                onChanged: onChanged,
-                validator: onValidator,
+                focusedBorder: OutlineInputBorder(
+                  borderRadius: BorderRadius.circular(10.h),
+                  borderSide: BorderSide.none,
+                ),
+                // errorBorder: CustomBorder.enabledBorder,
+                // focusedErrorBorder: CustomBorder.focusedErrorBorder,
+                // errorStyle: TextStyle(
+                //   color: AppColor.redLight,
+                //   fontSize: 12,
+                // ),
+
+                /// Visible if password field is [True]
+                suffixIcon: isPasswordFieldEmpty
+                    ? GestureDetector(
+                        onTap: onSuffixIconClicked,
+                        child: Container(
+                          margin: const EdgeInsets.symmetric(horizontal: 12),
+                          child: Image.asset(
+                            isPasswordHide
+                                ? ImageConstants.passwordHideEye
+                                : ImageConstants.passwordUnhideEye,
+                            height: 12,
+                            width: 12,
+                            color: isSuccess
+                                ? AppColor.greyColor
+                                : AppColor.errorTextColor,
+                          ),
+                        ),
+                      )
+                    : null,
+
+                /// Visible if password field is [True]
+                //   prefixIcon: isPasswordField ? Icon(
+                //     Icons.lock,
+                //     size: 16,
+                //     color: AppColor.greyColor,
+                //   ) : null,
               ),
+              onFieldSubmitted: onSubmit,
+              onChanged: onChanged,
+              validator: onValidator,
             ),
           ),
         ],
diff --git a/lib/customWidget/languageSelectionButton/language_selection_button.dart b/lib/customWidget/languageSelectionButton/language_selection_button.dart
new file mode 100644
index 0000000000000000000000000000000000000000..df520a5aca9e6b6b438b54adab63bc67225650f8
--- /dev/null
+++ b/lib/customWidget/languageSelectionButton/language_selection_button.dart
@@ -0,0 +1,83 @@
+import 'package:exide_crr/res/app_color_text_size.dart';
+import 'package:flutter/material.dart';
+import 'package:google_fonts/google_fonts.dart';
+
+class LanguageSelectionButton extends StatelessWidget {
+  final String language;
+  final String? selectedLanguage;
+  final ValueChanged<String?> onChanged;
+
+  const LanguageSelectionButton({
+    super.key,
+    required this.language,
+    required this.selectedLanguage,
+    required this.onChanged,
+  });
+
+  @override
+  Widget build(BuildContext context) {
+    bool isSelected = selectedLanguage == language;
+
+    return Container(
+      padding: const EdgeInsets.all(10),
+      decoration: BoxDecoration(
+        borderRadius: const BorderRadius.all(
+          Radius.circular(12),
+        ),
+        border: Border.all(
+            color: isSelected
+                ? AppColor.peach
+                : AppColor.lightGreyBorderColor),
+        color: isSelected ? AppColor.peach : AppColor.white,
+      ),
+      child: Row(
+        mainAxisAlignment: MainAxisAlignment.spaceBetween,
+        children: [
+          Row(
+            children: [
+              languageIcon(language),
+              const SizedBox(width: 12),
+              Text(
+                language == 'English' ? 'English' : 'हिन्दी',
+                style: GoogleFonts.beVietnamPro(
+                  fontSize: TextSize.textMediumSize,
+                  fontWeight: FontWeight.w500,
+                  color: AppColor.black,
+                ),
+              )
+            ],
+          ),
+          Radio<String>(
+            fillColor:
+                MaterialStateProperty.resolveWith((Set<MaterialState> states) {
+              if (states.contains(MaterialState.selected)) {
+                return AppColor.darkRed;
+              }
+              return AppColor.darkGray;
+            }),
+            value: language,
+            groupValue: selectedLanguage,
+            onChanged: onChanged,
+          ),
+        ],
+      ),
+    );
+  }
+
+  Widget languageIcon(String language) {
+    return Container(
+      alignment: Alignment.center,
+      height: 40,
+      width: 40,
+      decoration: const BoxDecoration(
+          borderRadius: BorderRadius.all(Radius.circular(50)),
+          color: AppColor.darkPeach),
+      child: Text(language == 'English' ? 'A' : 'अ',
+          style: GoogleFonts.beVietnamPro(
+            fontSize: 20,
+            fontWeight: FontWeight.w600,
+            color: AppColor.darkRed,
+          )),
+    );
+  }
+}
diff --git a/lib/customWidget/simmerWidget/custom_shimmer_widget.dart b/lib/customWidget/simmerWidget/custom_shimmer_widget.dart
new file mode 100644
index 0000000000000000000000000000000000000000..406e0be2d6c3d47b60717a6a82186038bf0c78ba
--- /dev/null
+++ b/lib/customWidget/simmerWidget/custom_shimmer_widget.dart
@@ -0,0 +1,21 @@
+import 'package:flutter/material.dart';
+import 'package:shimmer/shimmer.dart';
+
+Widget shimmerLoader(width, height, radius,
+    {bool customisedShimmerLoader = false, customisedShimmerWidget}) {
+  return Shimmer.fromColors(
+    baseColor: Colors.grey.shade300,
+    highlightColor: Colors.grey.shade100,
+    child: customisedShimmerLoader
+        ? customisedShimmerWidget
+        : Container(
+      margin: const EdgeInsets.only(top: 5),
+      width: width ?? 50.00,
+      height: height ?? 12.00,
+      decoration: BoxDecoration(
+        color: Colors.white,
+        borderRadius: BorderRadius.circular(radius ?? 4.00),
+      ),
+    ),
+  );
+}
diff --git a/lib/firebaseServices/firebase_service.dart b/lib/firebaseServices/firebase_service.dart
index 0934e1881699815cd2ee41590c157d5dec7791ef..a3a941d6be6cfc4f61004e4f9f0617df8808d78b 100644
--- a/lib/firebaseServices/firebase_service.dart
+++ b/lib/firebaseServices/firebase_service.dart
@@ -39,7 +39,26 @@ class FirebaseService {
     }
   }
 
-  Future<List<Map<String, dynamic>>> getAllRecord({required String collectionName, List<ConditionData>? conditions}) async {
+  Future<Map<String, dynamic>> getAllRecordMap({required String collectionName, List<ConditionData>? conditions}) async {
+    var query = db.collection(collectionName);
+    if(conditions != null) {
+      for (var element in conditions) {
+        query.where(element.key!, isEqualTo: element.value!);
+      }
+    }
+
+    // query.where("id", isEqualTo: "hello").where("p", isEqualTo: "uhfe");
+    HelperClass.printWrapped("query====${query.toString()}");
+
+    var snapshot = await query.get();
+    var data = snapshot.docs.first.data();
+
+    HelperClass.printWrapped("data====${data.toString()}");
+
+    return data;
+  }
+
+  Future<List<Map<String, dynamic>>> getAllRecordList({required String collectionName, List<ConditionData>? conditions}) async {
     var query = db.collection(collectionName);
     if(conditions != null) {
       for (var element in conditions) {
diff --git a/lib/preferences/app_shared_preferences.dart b/lib/preferences/app_shared_preferences.dart
index e16a4b366b91808ef0a5a802a6f4a29105bbb01d..db025273d84b6bb77de3f3f92fe7c9c09af2cc3f 100644
--- a/lib/preferences/app_shared_preferences.dart
+++ b/lib/preferences/app_shared_preferences.dart
@@ -1,7 +1,9 @@
 import 'dart:async';
 import 'dart:convert';
 import 'dart:developer';
+import 'package:exide_crr/serverRequest/all_request.dart';
 import 'package:exide_crr/utils/custom_toast.dart';
+import 'package:exide_crr/utils/helper_class.dart';
 import 'package:shared_preferences/shared_preferences.dart';
 import 'package:http/http.dart' as http;
 
@@ -21,6 +23,8 @@ class PreferenceHelper {
   static const String campusName = 'campus_name';
   static const String campusLatitude = 'campus_latitude';
   static const String campusLongitude = 'campus_longitude';
+  static const String selectedLanguage = 'selected_language';
+
 
   static const String lastRefresh = 'last_refresh';
   static const int refreshInterval = 5 * 100 * 1000;
@@ -33,6 +37,12 @@ class PreferenceHelper {
     return prefs;
   }
 
+  static Future saveSelectedLanguagePreferenceData(String language) async {
+    SharedPreferences prefs = await SharedPreferences.getInstance();
+    prefs.setString(selectedLanguage, language);
+    HelperClass.printWrapped("language ===> $language");
+  }
+
   static Future saveUserPreferenceData(
       Map<String, dynamic> userData) async {
     SharedPreferences prefs = await SharedPreferences.getInstance();
diff --git a/lib/res/app_color_text_size.dart b/lib/res/app_color_text_size.dart
index 5476924b4c7c3ef71979390d8d115eef09938c12..b32f29b8a35650befe601f918cd6cd87ae521cb8 100644
--- a/lib/res/app_color_text_size.dart
+++ b/lib/res/app_color_text_size.dart
@@ -14,11 +14,16 @@ class AppColor {
 
   static const lightBlack = Color(0xFF292E36);
   static const lightGrey = Color(0xFF555E6C);
+  static const lightGreyBorderColor = Color(0xFFCFD7E2);
+  static const darkGray = Color(0xFF96A6BE);
   static const lightWhite = Color(0xFFF5F7FA);
+  static const peach = Color(0xFFFCF4F4);
+  static const darkPeach = Color(0xFFFAE5E5);
   static const darkRed = Color(0xFFEC1B27);
   static const whiteColor = Color(0xffffffff);
   static const gradientFirstColor = Color(0xffF40C0C);
   static const gradientSecondColor = Color(0xff1071FF);
+  static const grayText = Color(0xff454A4F);
 
   static const primaryColor = Color(primaryColorHexValue);
   static const fontColor = Color(0xff1A1A1A);
@@ -97,7 +102,7 @@ class TextSize {
   static const textXSmallSize = 12.0;
   static const textMediumSize = 16.0;
   static const textLargeSize = 20.0;
-  static const textXLargeSize = 22.0;
+  static const textTitle = 22.0;
   static const textXXLargeSize = 24.0;
   static const textBodySize = 16.0;
   static const textDotSize = 32.0;
diff --git a/lib/routes/routes.dart b/lib/routes/routes.dart
index 217307c37410ec973f2ec66c66b51c0fc6a58f69..a2cb076702228a1efed63ed501cca7dd4c8c53b1 100644
--- a/lib/routes/routes.dart
+++ b/lib/routes/routes.dart
@@ -1,6 +1,9 @@
 /* Created by Nitesh Kumar */
 
 import 'package:exide_crr/routes/routes_name.dart';
+import 'package:exide_crr/views/languageSelectionScreen/views/language_selection_screen.dart';
+import 'package:exide_crr/views/loginScreen/view/login_screen.dart';
+import 'package:exide_crr/views/splash/splash_screen.dart';
 import 'package:exide_crr/views/splash/splash_screen.dart';
 import 'package:get/get.dart';
 
@@ -18,31 +21,24 @@ class Routes {
         transitionDuration: const Duration(milliseconds: 800),
         transition: Transition.cupertinoDialog,
       ),
+      GetPage(
+        name: RoutesName.languageSelectionScreen,
+        page: () => const LanguageSelectionScreen(),
+        transitionDuration: const Duration(milliseconds: 800),
+        transition: Transition.cupertinoDialog,
+      ),
+      GetPage(
+        name: RoutesName.loginScreen,
+        page: () => const LoginScreen(),
+        transitionDuration: const Duration(milliseconds: 800),
+        transition: Transition.cupertinoDialog,
+      ),
       GetPage(
         name: RoutesName.verifyOtp,
         page: () =>  const VerifyOtp(),
         transitionDuration: const Duration(milliseconds: 800),
         transition: Transition.cupertinoDialog,
       ),
-      // GetPage(
-      //   name: RoutesName.homeScreen,
-      //   page: () => const HomeScreen(),
-      //   transitionDuration: const Duration(milliseconds: 800),
-      //   transition: Transition.cupertinoDialog,
-      // ),
-      ///-------------////
-      //
-      // GetPage(
-      //   name: RoutesName.verifyOTP,
-      //   page: () => VerifyOTP(
-      //     usersDocId: Get.arguments["usersDocId"],
-      //     emailId: Get.arguments["emailId"],
-      //     mobileNumber: Get.arguments["mobileNumber"],
-      //     isFromSignUp: Get.arguments["isFromSignUp"],
-      //   ),
-      //   transitionDuration: const Duration(milliseconds: 800),
-      //   transition: Transition.cupertinoDialog,
-      // ),
     ];
   }
 }
diff --git a/lib/routes/routes_name.dart b/lib/routes/routes_name.dart
index 0ab593b9ea1108ce1695e2481ac4a80fa2915d91..5ac973435b0432dd1ba523f338d61322eeeaf98d 100644
--- a/lib/routes/routes_name.dart
+++ b/lib/routes/routes_name.dart
@@ -4,6 +4,7 @@ class RoutesName {
   static const String splashScreen = "/";
   static const String loginScreen = "/login";
   static const String homeScreen = "/home";
+  static const String languageSelectionScreen = "/languageSelection";
   static const String verifyOtp = "/verifyOtp";
 
 }
\ No newline at end of file
diff --git a/lib/utils/helper_class.dart b/lib/utils/helper_class.dart
index ae4faa4b9393a3702a90be0d35d47be8add3e305..deb2580149c4e17a60316efaa728ba9dde6ca2d7 100644
--- a/lib/utils/helper_class.dart
+++ b/lib/utils/helper_class.dart
@@ -226,11 +226,11 @@ class HelperClass {
                 color: AppColor.primaryColor.withOpacity(0.9),
                 borderRadius: BorderRadius.circular(12)
             ),
-            child: Center(
+            child: const Center(
               child: Column(
                 crossAxisAlignment: CrossAxisAlignment.center,
                 mainAxisAlignment: MainAxisAlignment.center,
-                children: const [
+                children: [
                   CircularProgressIndicator(
                     color: AppColor.whiteColor,
                     backgroundColor: AppColor.greyColor,
@@ -368,7 +368,7 @@ class HelperClass {
   }
 
 
-  static SpinKitThreeBounce spinkit = const SpinKitThreeBounce(
+  static SpinKitThreeBounce spinKit = const SpinKitThreeBounce(
     color: Colors.white,
     size: 27,
   );
diff --git a/lib/utils/res/styles.dart b/lib/utils/res/styles.dart
index 3ffdc4ec07977a49d96897006a9d1e3046dd5235..9e5efdd6e6293d6e057f7c35b383994a1da9a199 100644
--- a/lib/utils/res/styles.dart
+++ b/lib/utils/res/styles.dart
@@ -110,7 +110,7 @@ class Styles {
 
   static TextStyle hintTextFieldStyle = GoogleFonts.getFont(
     FontConstants.fontFamilyName,
-    fontSize: TextSize.textRegularSize,
+    fontSize: TextSize.textSmallSize,
     fontWeight: FontWeight.w500,
     fontStyle: FontStyle.normal,
     height: 1.0,
diff --git a/lib/views/languageSelectionScreen/views/language_selection_screen.dart b/lib/views/languageSelectionScreen/views/language_selection_screen.dart
new file mode 100644
index 0000000000000000000000000000000000000000..565ec064420e94dfcb17c0a59ecf18807283889a
--- /dev/null
+++ b/lib/views/languageSelectionScreen/views/language_selection_screen.dart
@@ -0,0 +1,89 @@
+import 'package:exide_crr/appLocalization/language_key.dart';
+import 'package:exide_crr/constants/enums.dart';
+import 'package:exide_crr/controller/base_controller.dart';
+import 'package:exide_crr/customWidget/button_widget.dart';
+import 'package:exide_crr/customWidget/customOnboardScreen/common_onboard_screen.dart';
+import 'package:exide_crr/customWidget/languageSelectionButton/language_selection_button.dart';
+import 'package:exide_crr/firebaseServices/firebase_service.dart';
+import 'package:exide_crr/model/condition_data.dart';
+import 'package:exide_crr/preferences/app_shared_preferences.dart';
+import 'package:exide_crr/res/app_color_text_size.dart';
+import 'package:exide_crr/routes/routes_name.dart';
+import 'package:flutter/material.dart';
+import 'package:get/get.dart';
+import 'package:get/get_utils/src/extensions/internacionalization.dart';
+import 'package:google_fonts/google_fonts.dart';
+
+class LanguageSelectionScreen extends StatefulWidget {
+  const LanguageSelectionScreen({super.key});
+
+  @override
+  State<LanguageSelectionScreen> createState() =>
+      _LanguageSelectionScreenState();
+}
+
+class _LanguageSelectionScreenState extends State<LanguageSelectionScreen> {
+  BaseController baseController = Get.find();
+
+  @override
+  Widget build(BuildContext context) {
+    return CommonOnboardScreen(
+      child: selectLanguageSection(),
+    );
+  }
+
+  Widget selectLanguageSection() {
+    return Padding(
+      padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 24),
+      child: Column(
+        children: [
+          Text(selectLanguage.tr,
+              style: GoogleFonts.beVietnamPro(
+                fontSize: TextSize.textLargeSize,
+                fontWeight: FontWeight.w500,
+                color: AppColor.black,
+              )),
+          const SizedBox(height: 10),
+          Text(selectLanguageDescription.tr,
+              textAlign: TextAlign.center,
+              style: GoogleFonts.beVietnamPro(
+                fontSize: TextSize.textSmallSize,
+                fontWeight: FontWeight.w400,
+                color: AppColor.lightGrey,
+              )),
+          const SizedBox(height: 16),
+          /// english button
+          LanguageSelectionButton(
+            language: LanguageType.English.name,
+            selectedLanguage: baseController.selectedLanguage.value,
+            onChanged: (String? value) async {
+              baseController.selectedLanguage.value = value!;
+              Get.updateLocale(const Locale("en", "US"));
+            },
+          ),
+          const SizedBox(height: 20),
+          /// hindi button
+          LanguageSelectionButton(
+            language: LanguageType.Hindi.name,
+            selectedLanguage: baseController.selectedLanguage.value,
+            onChanged: (String? value) {
+              baseController.selectedLanguage.value = value!;
+              Get.updateLocale(const Locale("hi", "IN"));
+            },
+          ),
+          const Spacer(),
+          CustomButton(
+            buttonName: saveMyPreference.tr,
+            onTap: () {
+              PreferenceHelper.saveSelectedLanguagePreferenceData(baseController.selectedLanguage.value);
+              Get.offNamed(RoutesName.loginScreen);
+            },
+            activeBackgroundColor: AppColor.darkRed,
+            width: Get.width,
+            isActive: baseController.selectedLanguage.value.isNotEmpty,
+          ),
+        ],
+      ),
+    );
+  }
+}
diff --git a/lib/views/loginScreen/controller/login_controller.dart b/lib/views/loginScreen/controller/login_controller.dart
new file mode 100644
index 0000000000000000000000000000000000000000..98451665d54c6aefc916b844c61709c07fb93eae
--- /dev/null
+++ b/lib/views/loginScreen/controller/login_controller.dart
@@ -0,0 +1,41 @@
+import 'package:exide_crr/constants/firebaseConstants/field_constants.dart';
+import 'package:exide_crr/constants/firebaseConstants/firebase_collections_constants.dart';
+import 'package:exide_crr/firebaseServices/firebase_service.dart';
+import 'package:exide_crr/utils/helper_class.dart';
+import 'package:flutter/material.dart';
+import 'package:get/get.dart';
+import 'package:get/get_rx/src/rx_types/rx_types.dart';
+import 'package:get/get_state_manager/src/simple/get_controllers.dart';
+
+import '../../../model/condition_data.dart';
+
+class LoginController extends GetxController {
+  FirebaseService firebaseService = FirebaseService.instance;
+  final TextEditingController dealerCodeController = TextEditingController();
+  RxMap<String, dynamic> dealerData = <String, dynamic>{}.obs;
+  RxBool isLoginLoading = false.obs;
+  RxBool isLoginSuccessfull = false.obs;
+
+  /// login with dealer code logic
+  loginWithDealerCode() async {
+    try {
+      isLoginLoading.value = true;
+      dealerData.clear();
+      await firebaseService.getAllRecordMap(
+          collectionName: FirebaseCollectionConstant.dealers,
+          conditions: [
+            ConditionData(
+                key: FieldConstants.code,
+                value: dealerCodeController.value.text),
+          ]).then((dealerDataResult) {
+        dealerData.value = dealerDataResult;
+        HelperClass.printWrapped("dealerData ==> $dealerData");
+      });
+    } catch (e) {
+      isLoginLoading.value = false;
+      HelperClass.printWrapped("loginWithDealerCode ==> $loginWithDealerCode");
+    } finally {
+      isLoginLoading.value = false;
+    }
+  }
+}
diff --git a/lib/views/loginScreen/view/login_screen.dart b/lib/views/loginScreen/view/login_screen.dart
new file mode 100644
index 0000000000000000000000000000000000000000..c12efaf8807423bc17f47dda093d18522e1aa02c
--- /dev/null
+++ b/lib/views/loginScreen/view/login_screen.dart
@@ -0,0 +1,153 @@
+import 'package:exide_crr/appLocalization/language_key.dart';
+import 'package:exide_crr/constants/app_images.dart';
+import 'package:exide_crr/constants/enums.dart';
+import 'package:exide_crr/customWidget/app_text.dart';
+import 'package:exide_crr/customWidget/button_widget.dart';
+import 'package:exide_crr/customWidget/customOnboardScreen/common_onboard_screen.dart';
+import 'package:exide_crr/customWidget/custom_text_field.dart';
+import 'package:exide_crr/customWidget/simmerWidget/custom_shimmer_widget.dart';
+import 'package:exide_crr/res/app_color_text_size.dart';
+import 'package:exide_crr/utils/helper_class.dart';
+import 'package:exide_crr/views/loginScreen/controller/login_controller.dart';
+import 'package:flutter/material.dart';
+import 'package:flutter_svg/flutter_svg.dart';
+import 'package:get/get.dart';
+import 'package:get/get_utils/src/extensions/internacionalization.dart';
+
+class LoginScreen extends StatefulWidget {
+  const LoginScreen({super.key});
+
+  @override
+  State<LoginScreen> createState() => _LoginScreenState();
+}
+
+class _LoginScreenState extends State<LoginScreen> {
+  LoginController loginController = Get.put(LoginController());
+
+  @override
+  Widget build(BuildContext context) {
+    return CommonOnboardScreen(
+      child: loginSection(),
+    );
+  }
+
+  /// Login form section
+  /// with next button
+  Widget loginSection() {
+    return Padding(
+      padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 24),
+      child: Column(
+        crossAxisAlignment: CrossAxisAlignment.start,
+        children: [
+          SvgPicture.asset(
+            AppImages.appLogo,
+            width: 22,
+            height: 25,
+          ),
+          const SizedBox(height: 16),
+
+          /// welcome text
+          AppText(
+            text: welcomeText.tr,
+            fontSize: TextSize.textTitle,
+            textColor: AppColor.grayText,
+            fontWeight: FontWeight.w500,
+          ),
+          const SizedBox(height: 8),
+          AppText(
+            text: pleaseLoginToYourAccount.tr,
+            fontSize: TextSize.textSmallSize,
+            textColor: AppColor.lightGrey,
+            fontWeight: FontWeight.w400,
+          ),
+          const SizedBox(height: 24),
+
+          /// dealer code
+          AppText(
+            text: dealerCodeRWD.tr,
+            fontSize: TextSize.textXSmallSize,
+            textColor: AppColor.lightGrey,
+            fontWeight: FontWeight.w500,
+          ),
+          const SizedBox(height: 8),
+
+          CustomTextField(
+            inputAction: TextInputAction.done,
+            textFieldText: '',
+            hintText: "Enter Code Here",
+            maxLength: 5,
+            inputType: InputType.number.name,
+            textEditingController: loginController.dealerCodeController,
+            // autoFocus: true,
+            onChanged: (value) {
+              HelperClass.printWrapped(
+                  "loginController ==> ${loginController.dealerCodeController.value.text}");
+              if (value.length == 5) {
+                /// hide key board
+                FocusScope.of(context).unfocus();
+                loginController.loginWithDealerCode();
+              }
+            },
+          ),
+          const SizedBox(height: 20),
+          Obx(() => loginController.dealerData["phone"] == null
+              ? const SizedBox()
+              : loginController.isLoginLoading.value
+                  ? phoneNumberWidgetShimmer()
+                  : phoneNumberWidget(
+                      phoneNumber: loginController.dealerData["phone"] ?? "")),
+          const Spacer(),
+
+          /// next button
+          Obx(
+            () => CustomButton(
+              buttonName: next.tr,
+              onTap: () {
+                // Get.offNamed(RoutesName.loginScreen);
+              },
+              activeBackgroundColor: AppColor.darkRed,
+              width: Get.width,
+              isActive: loginController.dealerData["phone"] != null,
+            ),
+          ),
+        ],
+      ),
+    );
+  }
+
+  /// phone number widget shimmer
+  Widget phoneNumberWidgetShimmer() {
+    return Column(
+      crossAxisAlignment: CrossAxisAlignment.start,
+      children: [
+        shimmerLoader(158.0, 18.0, 6.0),
+        const SizedBox(height: 8),
+        shimmerLoader(136.0, 18.0, 6.0),
+      ],
+    );
+  }
+
+  /// masked [phoneNumber] widget
+  Widget phoneNumberWidget({required String phoneNumber}) {
+    String maskedPhoneNumber = phoneNumber.replaceRange(
+        0, phoneNumber.length - 2, "X" * (phoneNumber.length - 2));
+    return Column(
+      crossAxisAlignment: CrossAxisAlignment.start,
+      children: [
+        AppText(
+          text: yourRegisteredMobileNumber.tr,
+          fontSize: TextSize.textXSmallSize,
+          textColor: AppColor.lightGrey,
+          fontWeight: FontWeight.w500,
+        ),
+        const SizedBox(height: 8),
+        AppText(
+          text: "+91 $maskedPhoneNumber",
+          fontSize: TextSize.textMediumSize,
+          textColor: AppColor.black,
+          fontWeight: FontWeight.w500,
+        ),
+      ],
+    );
+  }
+}
diff --git a/lib/views/splash/splash_screen.dart b/lib/views/splash/splash_screen.dart
index 1dbc52615c7fa5748d76074b8adc0da4c07356d6..79d2ce1bf097e8376bcde7950a4ee4c3f362f55a 100644
--- a/lib/views/splash/splash_screen.dart
+++ b/lib/views/splash/splash_screen.dart
@@ -1,14 +1,13 @@
 import 'dart:async';
-
-import 'package:exide_crr/appLocalization/language_key.dart';
-import 'package:exide_crr/appbar/empty_app_bar.dart';
-import 'package:exide_crr/firebaseServices/firebase_service.dart';
-import 'package:exide_crr/model/condition_data.dart';
-import 'package:exide_crr/res/app_color_text_size.dart';
-import 'package:exide_crr/routes/routes_name.dart';
-import 'package:exide_crr/utils/res/styles.dart';
+import 'package:animate_do/animate_do.dart';
+import 'package:exide_crr/preferences/app_shared_preferences.dart';
 import 'package:flutter/material.dart';
+import 'package:flutter_svg/flutter_svg.dart';
 import 'package:get/get.dart';
+import 'package:exide_crr/constants/app_images.dart';
+import 'package:exide_crr/res/app_color_text_size.dart';
+import 'package:exide_crr/routes/routes_name.dart';
+import 'package:exide_crr/appbar/empty_app_bar.dart';
 
 class SplashScreen extends StatefulWidget {
   const SplashScreen({super.key});
@@ -18,89 +17,43 @@ class SplashScreen extends StatefulWidget {
 }
 
 class _SplashScreenState extends State<SplashScreen> {
-
   @override
   void initState() {
-    // TODO: implement initState
     super.initState();
+    Timer(const Duration(seconds: 3), () {
+      /// if language not selected then redirect to [language Selection Screen]
+      /// if language already selected then redirect to [landing page ]
+      if (checkForSelectedLanguage() == "") {
+        Get.toNamed(RoutesName.languageSelectionScreen);
+      } else {
+        Get.toNamed(RoutesName.languageSelectionScreen);
+      }
+    });
+  }
+
+  /// get selected language from local storage
+  checkForSelectedLanguage() async {
+    String selectedLanguage = await PreferenceHelper.getPreferenceData(PreferenceHelper.selectedLanguage) ?? "";
+    return selectedLanguage;
   }
 
   @override
   Widget build(BuildContext context) {
     return Scaffold(
       appBar: const EmptyAppBar(),
-      backgroundColor: AppColor.backgroundColor,
-      body: Center(
-        child: Column(
-          crossAxisAlignment: CrossAxisAlignment.center,
-          mainAxisAlignment: MainAxisAlignment.center,
-          children: [
-            ListTile(
-              title: Text(message.tr, style: Styles.fontStyle,),
-              subtitle: Text(name.tr, style: Styles.subFontStyle,),
-            ),
-
-            const SizedBox(height: 50,),
-
-            IntrinsicHeight(
-              child: Row(
-                crossAxisAlignment: CrossAxisAlignment.center,
-                mainAxisAlignment: MainAxisAlignment.center,
-                children: [
-                  GestureDetector(
-                    onTap: () async {
-                      Get.updateLocale(const Locale("en", "US"));
-
-                      FirebaseService firebaseService = FirebaseService.instance;
-
-                      await firebaseService.getAllRecord(
-                        collectionName: "awc",
-                          conditions: [
-                            ConditionData(key: "id", value: "hello"),
-                            ConditionData(key: "productId", value: "hello"),
-                          ]
-                      );
-                    },
-                    child: Container(
-                      width: 120,
-                      padding: const EdgeInsets.all(12),
-                      decoration: BoxDecoration(
-                        color: AppColor.primaryColor,
-                        borderRadius: BorderRadius.circular(12)
-                      ),
-                      child: Text(
-                        "English",
-                        style: Styles.buttonStyle,
-                        textAlign: TextAlign.center,
-                      ),
-                    ),
-                  ),
-
-                  const SizedBox(width: 24,),
-
-                  GestureDetector(
-                    onTap: () {
-                       Get.updateLocale(const Locale("hi", "IN"));
-                    },
-                    child: Container(
-                      width: 120,
-                      padding: const EdgeInsets.all(12),
-                      decoration: BoxDecoration(
-                          color: AppColor.primaryColor,
-                          borderRadius: BorderRadius.circular(12)
-                      ),
-                      child: Text(
-                        "Hindi",
-                        style: Styles.buttonStyle,
-                        textAlign: TextAlign.center,
-                      ),
-                    ),
-                  )
-                ],
-              ),
-            )
-          ],
-        )
+      backgroundColor: Colors.black,
+      body: Container(
+        alignment: Alignment.center,
+        color: AppColor.white,
+        width: double.infinity,
+        height: double.infinity,
+        child: ZoomIn(
+          child: SvgPicture.asset(
+            AppImages.appLogo,
+            width: 218,
+            height: 58,
+          ),
+        ),
       ),
     );
   }
diff --git a/pubspec.lock b/pubspec.lock
index 6bf024bf05e5073843f496dd41586faadd0761f3..25bb75cc346aebb6306621bde0a2b7ca394be7aa 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -17,6 +17,14 @@ packages:
       url: "https://pub.dev"
     source: hosted
     version: "1.0.0"
+  animate_do:
+    dependency: "direct main"
+    description:
+      name: animate_do
+      sha256: "7a3162729f0ea042f9dd84da217c5bde5472ad9cef644079929d4304a5dc4ca0"
+      url: "https://pub.dev"
+    source: hosted
+    version: "3.3.4"
   args:
     dependency: transitive
     description:
diff --git a/pubspec.yaml b/pubspec.yaml
index b112ac1ee70dcd4cc03a6e061c46f1caeae0f28d..08212235290265fd37464de960a06c09d8a5e678 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -79,6 +79,7 @@ dependencies:
   geocoding: ^2.0.2
   dart_jsonwebtoken: ^2.12.2
   pin_code_fields: ^8.0.1
+  animate_do: ^3.3.4
 
 
 dev_dependencies:
@@ -104,6 +105,8 @@ flutter:
   uses-material-design: true
 
   assets:
+    - assets/logos/
+    - assets/images/
     - assets/navigation/
     - assets/successImages/