diff --git a/app/build.gradle b/app/build.gradle
index 1f9f58532a1bd0d265fca34b0b24fcd32aecd576..20801373a986ae46db5db0869a4b633b4187402d 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -26,6 +26,7 @@ dependencies {
     })
     compile 'com.android.support:appcompat-v7:25.3.1'
     compile 'com.google.firebase:firebase-auth:10.2.1'
+    compile 'com.google.firebase:firebase-database:10.2.1'
     compile 'com.google.android.gms:play-services-auth:10.2.1'
     testCompile 'junit:junit:4.12'
 }
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index ebed06e1a92f193e6a622076648daec4cf19c10c..78bc935ce67488955b57c7172d04606878e78069 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -15,7 +15,8 @@
                 <category android:name="android.intent.category.LAUNCHER" />
             </intent-filter>
         </activity>
-        <activity android:name=".MainActivity"></activity>
+        <activity android:name=".MainActivity" />
+        <activity android:name=".RollNumber"></activity>
     </application>
 
 </manifest>
\ No newline at end of file
diff --git a/app/src/main/java/com/darshanbshah/odsystem/Login.java b/app/src/main/java/com/darshanbshah/odsystem/Login.java
index d52c898348187d0c2abec71fd970de0fa25aa35a..44a1a4548176e8cf4977101541bb7fe052dfee17 100644
--- a/app/src/main/java/com/darshanbshah/odsystem/Login.java
+++ b/app/src/main/java/com/darshanbshah/odsystem/Login.java
@@ -1,6 +1,8 @@
 package com.darshanbshah.odsystem;
 
+import android.app.ProgressDialog;
 import android.content.Intent;
+import android.content.SharedPreferences;
 import android.support.annotation.NonNull;
 import android.support.v7.app.AppCompatActivity;
 import android.os.Bundle;
@@ -26,14 +28,22 @@ public class Login extends AppCompatActivity implements GoogleApiClient.OnConnec
     private GoogleApiClient mGoogleApiClient;
     private FirebaseAuth mAuth;
     private FirebaseAuth.AuthStateListener mAuthListener;
+    private ProgressDialog dialog;
 
     private static int RC_SIGN_IN = 0;
     private static String TAG = "MAIN_ACTIVITY";
+
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_login);
         mAuth = FirebaseAuth.getInstance();
+
+        if (mAuth.getCurrentUser() != null) {
+            startActivity(new Intent(getApplicationContext(), RollNumber.class));
+            finish();
+        }
+
         mAuthListener = new FirebaseAuth.AuthStateListener() {
             @Override
             public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
@@ -50,9 +60,13 @@ public class Login extends AppCompatActivity implements GoogleApiClient.OnConnec
         mGoogleApiClient = new GoogleApiClient.Builder(this).enableAutoManage(this, this).addApi(Auth.GOOGLE_SIGN_IN_API, options).build();
 
         findViewById(R.id.sign_in_button).setOnClickListener(this);
+
+        dialog = new ProgressDialog(this);
     }
 
     public void login() {
+        dialog.setMessage("Logging in. Please wait.");
+        dialog.show();
         Intent signInIntent = Auth.GoogleSignInApi.getSignInIntent(mGoogleApiClient);
         startActivityForResult(signInIntent, RC_SIGN_IN);
     }
@@ -93,7 +107,7 @@ public class Login extends AppCompatActivity implements GoogleApiClient.OnConnec
             @Override
             public void onComplete(@NonNull Task<AuthResult> task) {
                 Log.d("AUTH", "signInWithCredential: onComplete: " + task.isSuccessful());
-                startActivity(new Intent(getApplicationContext(), MainActivity.class));
+                startActivity(new Intent(getApplicationContext(), RollNumber.class));
             }
         });
     }
diff --git a/app/src/main/java/com/darshanbshah/odsystem/MainActivity.java b/app/src/main/java/com/darshanbshah/odsystem/MainActivity.java
index dff9f5e24b434c7ba1b0495036dda9f831e10c27..2b1db6092ffd9875ef032a79fa18007c95f8b1a1 100644
--- a/app/src/main/java/com/darshanbshah/odsystem/MainActivity.java
+++ b/app/src/main/java/com/darshanbshah/odsystem/MainActivity.java
@@ -4,17 +4,21 @@ import android.content.Intent;
 import android.support.v7.app.AppCompatActivity;
 import android.os.Bundle;
 import android.view.View;
+import android.widget.TextView;
 
 import com.google.firebase.auth.FirebaseAuth;
 
 public class MainActivity extends AppCompatActivity {
 
     private FirebaseAuth mAuth;
+    private TextView welcomeText;
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_main);
         mAuth = FirebaseAuth.getInstance();
+        welcomeText = (TextView)findViewById(R.id.welcomeText);
+        welcomeText.setText("Welcome " + mAuth.getCurrentUser().getEmail());
     }
 
     public void signOut(View view) {
diff --git a/app/src/main/java/com/darshanbshah/odsystem/RollNumber.java b/app/src/main/java/com/darshanbshah/odsystem/RollNumber.java
new file mode 100644
index 0000000000000000000000000000000000000000..0fc0a308c27a9bc406a1fad64489e17675779156
--- /dev/null
+++ b/app/src/main/java/com/darshanbshah/odsystem/RollNumber.java
@@ -0,0 +1,67 @@
+package com.darshanbshah.odsystem;
+
+import android.content.Context;
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.support.annotation.MainThread;
+import android.support.v7.app.AppCompatActivity;
+import android.os.Bundle;
+import android.text.TextUtils;
+import android.util.Log;
+import android.view.View;
+import android.widget.EditText;
+import android.widget.Toast;
+
+import com.google.firebase.auth.FirebaseAuth;
+import com.google.firebase.database.DatabaseReference;
+import com.google.firebase.database.FirebaseDatabase;
+import com.google.firebase.database.Query;
+
+public class RollNumber extends AppCompatActivity {
+
+    private FirebaseAuth mAuth = FirebaseAuth.getInstance();
+    private EditText rollNumber;
+
+    FirebaseDatabase database = FirebaseDatabase.getInstance();
+
+    DatabaseReference root = database.getReference();
+    DatabaseReference user = root.child(mAuth.getCurrentUser().getUid());
+    DatabaseReference roll_no = user.child("RollNumber");
+    DatabaseReference email = user.child("Email");
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_roll_number);
+        rollNumber = (EditText)findViewById(R.id.rollNumberEditText);
+        SharedPreferences pref = getSharedPreferences("ActivityPREF", Context.MODE_PRIVATE);
+        if(pref.getBoolean("activity_executed", false)){
+            Intent intent = new Intent(this, MainActivity.class);
+            startActivity(intent);
+            finish();
+        }
+        else {
+            SharedPreferences.Editor ed = pref.edit();
+            ed.putBoolean("activity_executed", true);
+            ed.commit();
+        }
+    }
+
+    public void nextAct(View view) {
+        if (TextUtils.isEmpty(rollNumber.getText().toString())) {
+            Toast.makeText(this, "Enter Roll Number", Toast.LENGTH_SHORT).show();
+        }
+        else {
+            roll_no.setValue(rollNumber.getText().toString());
+            email.setValue(mAuth.getCurrentUser().getEmail());
+            startActivity(new Intent(this, MainActivity.class));
+            finish();
+        }
+    }
+
+    public void signOut(View view) {
+        mAuth.signOut();
+        startActivity(new Intent(this, Login.class));
+        finish();
+    }
+}
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index b091d10213ce5e56a653da9801ffac9328e9c3c3..5240c74580e31f99def20df4c883be04ecf17d49 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -12,7 +12,17 @@
         android:layout_height="wrap_content"
         android:id="@+id/sign_out_button"
         android:onClick="signOut"
-        style="@android:style/Widget.Material.Button.ButtonBar.AlertDialog"
+        style="@style/Widget.AppCompat.Button.Borderless"
+        android:textColor="@color/colorAccent"
         android:layout_alignParentTop="true"
         android:layout_alignParentEnd="true" />
+
+    <TextView
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:layout_below="@+id/sign_out_button"
+        android:layout_centerHorizontal="true"
+        android:layout_marginTop="66dp"
+        android:id="@+id/welcomeText"
+        android:textAppearance="@style/TextAppearance.AppCompat.Display1" />
 </RelativeLayout>
diff --git a/app/src/main/res/layout/activity_roll_number.xml b/app/src/main/res/layout/activity_roll_number.xml
new file mode 100644
index 0000000000000000000000000000000000000000..71eff6f1a790dcdef9ec3396ac2fef42cfc65dcf
--- /dev/null
+++ b/app/src/main/res/layout/activity_roll_number.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:id="@+id/activity_roll_number"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:paddingBottom="@dimen/activity_vertical_margin"
+    android:paddingLeft="@dimen/activity_horizontal_margin"
+    android:paddingRight="@dimen/activity_horizontal_margin"
+    android:paddingTop="@dimen/activity_vertical_margin"
+    tools:context="com.darshanbshah.odsystem.RollNumber">
+
+    <EditText
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:inputType="textPersonName"
+        android:ems="10"
+        android:layout_alignParentTop="true"
+        android:layout_centerHorizontal="true"
+        android:layout_marginTop="167dp"
+        android:id="@+id/rollNumberEditText"
+        android:hint="Amrita Roll Number"
+        android:textAlignment="center" />
+
+    <Button
+        android:text="Sign Out"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:id="@+id/button3"
+        style="@style/Widget.AppCompat.Button.Borderless.Colored"
+        android:layout_alignParentTop="true"
+        android:layout_alignParentEnd="true"
+        android:onClick="signOut" />
+
+    <Button
+        android:text="Continue"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="42dp"
+        android:id="@+id/continueButton"
+        style="@style/Widget.AppCompat.Button.Colored"
+        android:layout_below="@+id/rollNumberEditText"
+        android:layout_centerHorizontal="true"
+        android:onClick="nextAct" />
+</RelativeLayout>
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index 3ab3e9cbce07f7cdc941fc8ba424c05e83ed80f0..4d44345ece9088f11daf17c07fc4c2aa55197882 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -2,5 +2,5 @@
 <resources>
     <color name="colorPrimary">#3F51B5</color>
     <color name="colorPrimaryDark">#303F9F</color>
-    <color name="colorAccent">#FF4081</color>
+    <color name="colorAccent">#ff4081</color>
 </resources>