diff --git a/app/build.gradle b/app/build.gradle
index 589f139c876786ba91449370a64b44bf57c338e6..5cb4078bb77b99ce230bf5cfe45d374cb0f612cf 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -28,4 +28,7 @@ dependencies {
     compile 'com.android.support:design:25.3.0'
     compile 'com.android.support.constraint:constraint-layout:1.0.2'
     testCompile 'junit:junit:4.12'
+    compile 'com.google.firebase:firebase-auth:10.2.0'
 }
+
+apply plugin: 'com.google.gms.google-services'
\ No newline at end of file
diff --git a/app/google-services.json b/app/google-services.json
new file mode 100644
index 0000000000000000000000000000000000000000..8c43b2216f99c6f7dec70dbef5062bea67aaabbd
--- /dev/null
+++ b/app/google-services.json
@@ -0,0 +1,42 @@
+{
+  "project_info": {
+    "project_number": "629462529132",
+    "firebase_url": "https://browsy-bc721.firebaseio.com",
+    "project_id": "browsy-bc721",
+    "storage_bucket": "browsy-bc721.appspot.com"
+  },
+  "client": [
+    {
+      "client_info": {
+        "mobilesdk_app_id": "1:629462529132:android:50e3b5ef2ef861e3",
+        "android_client_info": {
+          "package_name": "com.example.taskboxx"
+        }
+      },
+      "oauth_client": [
+        {
+          "client_id": "629462529132-b6vra23omvdfhos88osa7bvv0p1g8lrv.apps.googleusercontent.com",
+          "client_type": 3
+        }
+      ],
+      "api_key": [
+        {
+          "current_key": "AIzaSyBsz9xV3HCn9UXJ6TOP2mlRNeTGVSDw9gE"
+        }
+      ],
+      "services": {
+        "analytics_service": {
+          "status": 1
+        },
+        "appinvite_service": {
+          "status": 1,
+          "other_platform_oauth_client": []
+        },
+        "ads_service": {
+          "status": 2
+        }
+      }
+    }
+  ],
+  "configuration_version": "1"
+}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 2d6c50244fb6dcbf2255e9e2b87470609c2fbf95..92ce7e16e54347a1474b7d58c0a373c198151aac 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -12,8 +12,7 @@
             android:name=".Dashboard"
             android:label="DashBoard"
             android:theme="@style/AppTheme.NoActionBar" />
-        <activity android:name=".LoginActivity"
-            android:theme="@style/AppTheme.NoActionBar">
+        <activity android:name=".LoginActivity">
             <intent-filter>
                 <action android:name="android.intent.action.MAIN" />
 
diff --git a/app/src/main/java/com/example/taskboxx/SignUpActivity.java b/app/src/main/java/com/example/taskboxx/SignUpActivity.java
index a8a0414f63d53dd184f333728ad30fb2a1974b93..25cc530e5345c9b3c569d876297d0c81f28a7420 100644
--- a/app/src/main/java/com/example/taskboxx/SignUpActivity.java
+++ b/app/src/main/java/com/example/taskboxx/SignUpActivity.java
@@ -1,28 +1,104 @@
 package com.example.taskboxx;
 
+import android.app.ProgressDialog;
 import android.content.Intent;
 import android.graphics.Paint;
+import android.support.annotation.NonNull;
 import android.support.design.widget.TabLayout;
 import android.support.v4.view.ViewPager;
 import android.support.v7.app.AppCompatActivity;
 import android.os.Bundle;
 import android.support.v7.widget.Toolbar;
+import android.text.TextUtils;
 import android.view.View;
+import android.widget.Button;
+import android.widget.EditText;
+import android.widget.ProgressBar;
 import android.widget.TextView;
 import android.widget.Toast;
 
+import com.google.android.gms.tasks.OnCompleteListener;
+import com.google.android.gms.tasks.Task;
+import com.google.firebase.auth.AuthResult;
+import com.google.firebase.auth.FirebaseAuth;
+
 public class SignUpActivity extends AppCompatActivity {
 
+    private Button signup_button;
+    private EditText name;
+    private EditText username;
+    private EditText emailid;
+    private EditText pwd;
+    private EditText confirm_pwd;
+    private ProgressDialog pd;
+
+    public FirebaseAuth firebaseAuth;
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_sign_up);
+
+        firebaseAuth = FirebaseAuth.getInstance();
+        signup_button = (Button) findViewById(R.id.SignUp);
+        name = (EditText) findViewById(R.id.input_Name_SignUp);
+        username = (EditText) findViewById(R.id.input_Username_SignUp);
+        emailid = (EditText) findViewById(R.id.input_email_SignUp);
+        pwd =(EditText) findViewById(R.id.input_NewPass_SignUp);
+        confirm_pwd = (EditText) findViewById(R.id.input_RePass_SignUp);
+
+        pd = new ProgressDialog(this);
+
     }
 
     public void SignUp(View view){
-        Toast.makeText(this, "Registered!", Toast.LENGTH_SHORT).show();
-        Toast.makeText(this, "Please Log In to Proceed", Toast.LENGTH_SHORT).show();
-        Intent loginintent = new Intent(this,LoginActivity.class);
-        startActivity(loginintent);
+
+        String u_name = name.getText().toString();
+        String u_username = username.getText().toString();
+        String u_email = emailid.getText().toString();
+        String u_pwd = pwd.getText().toString();
+        String u_c_pwd = confirm_pwd.getText().toString();
+
+        if (TextUtils.isEmpty(u_name) || TextUtils.isEmpty(u_username) || TextUtils.isEmpty(u_email)  ||TextUtils.isEmpty(u_pwd) ||TextUtils.isEmpty(u_c_pwd) )
+        {
+            Toast.makeText(this,"Please Enter All the fields to proceed!",Toast.LENGTH_SHORT).show();
+            return;
+        }
+
+
+        if (u_pwd.equals(u_c_pwd) )
+        {
+            pd.setMessage("Browsy is Registering User!");
+            pd.show();
+
+            firebaseAuth.createUserWithEmailAndPassword(u_email,u_pwd)
+                    .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
+                        @Override
+                        public void onComplete(@NonNull Task<AuthResult> task) {
+                            if(task.isSuccessful())
+                            {
+                                pd.hide();
+                                Toast.makeText(SignUpActivity.this,"Registered Successfully!",Toast.LENGTH_SHORT).show();
+
+                            }
+                            else
+                            {
+                                pd.hide();
+                                Toast.makeText(SignUpActivity.this,"Failed to register!",Toast.LENGTH_SHORT).show();
+
+                            }
+                        }
+                    });
+        }
+        else
+        {
+            Toast.makeText(this,"The Entered Password doesn't Match!",Toast.LENGTH_SHORT).show();
+            return;
+        }
+
+
+        //Toast.makeText(this, "Registered!", Toast.LENGTH_SHORT).show();
+
+
+
     }
 }
diff --git a/app/src/main/res/layout/activity_sign_up.xml b/app/src/main/res/layout/activity_sign_up.xml
index fa5b60dcccfd494680aa299be0615bd1b916a355..79428bf27bdde35ad7b300a1878767185c890059 100644
--- a/app/src/main/res/layout/activity_sign_up.xml
+++ b/app/src/main/res/layout/activity_sign_up.xml
@@ -129,6 +129,10 @@
                 android:background="#EEEEEE"
                 android:onClick="SignUp"
                 android:text="Sign Up" />
+
         </LinearLayout>
+
+
     </RelativeLayout>
+
 </ScrollView>
diff --git a/build.gradle b/build.gradle
index b78a0b86c939620b6f05483ce45c4d3ef0ef595e..a0acab93005fe02dba1e47c2f2423a11a5b42130 100644
--- a/build.gradle
+++ b/build.gradle
@@ -6,6 +6,7 @@ buildscript {
     }
     dependencies {
         classpath 'com.android.tools.build:gradle:2.3.1'
+        classpath 'com.google.gms:google-services:3.0.0'
 
         // NOTE: Do not place your application dependencies here; they belong
         // in the individual module build.gradle files