diff --git a/compforge/.firebase/hosting.YnVpbGQ.cache b/compforge/.firebase/hosting.YnVpbGQ.cache
index 2269602f719a5e398679ca3430dd68bce94598f6..9fe633e8af3c8415ab4bd00d67f82b29fdcf4466 100644
--- a/compforge/.firebase/hosting.YnVpbGQ.cache
+++ b/compforge/.firebase/hosting.YnVpbGQ.cache
@@ -1,17 +1,17 @@
 404.html,1586351207960,b7bab6b83fa074653ff28c8d2a64135d3434575f70a12ab3d3ba8080461b9537
+asset-manifest.json,1586351226513,9bdae63ab9813e4828dd4dd4b39c2c71ba8ebadbc23780ac8eb61a63a8ed5ee3
+favicon.ico,1586351207967,a7f9959c242eab6cdf79ddb2d1d2a4112a7c7ba3ecc911ddf7bf7b1fff54a07d
+index.html,1586351226513,33e3b871cf77ab7078c0779dc9135fb0e19a7c1b05fb5ef53b4c82375d7fde50
 manifest.json,1586351207972,15492b46b805f4ba9408ae30685145c16c1fdd2163fe3934f1c8f6c6d0eb0800
-robots.txt,1586351207977,2544ca049f223a42bff01f72ad930a5edba75bbb7199d0f8430a02ff5aca16ec
 precache-manifest.def63341b2b22b203538bbf1684d6536.js,1586351226540,d04d6a0f2339061ceb249d63e22bbb89663d5909eb421577c99beec3de614e27
-static/css/main.5f361e03.chunk.css,1586351226551,1225945381892d813e90efe1c2bf85dad429fb1fce6829657a852a833b2081a3
+robots.txt,1586351207977,2544ca049f223a42bff01f72ad930a5edba75bbb7199d0f8430a02ff5aca16ec
 service-worker.js,1586351226513,95a9901b401055db71838ab85b04416f96ba7aed1c65eed7e193b89dd46a024b
+static/css/main.5f361e03.chunk.css,1586351226551,1225945381892d813e90efe1c2bf85dad429fb1fce6829657a852a833b2081a3
 static/css/main.5f361e03.chunk.css.map,1586351226562,598f7972010d8f32c864cacf97d3770434b6aaf52e74a00c2e8b1b13faf78d9f
-index.html,1586351226513,33e3b871cf77ab7078c0779dc9135fb0e19a7c1b05fb5ef53b4c82375d7fde50
-favicon.ico,1586351207967,a7f9959c242eab6cdf79ddb2d1d2a4112a7c7ba3ecc911ddf7bf7b1fff54a07d
-static/js/main.cbe32a5b.chunk.js,1586351226818,ada07cabc83d1ea1e695c59f4846ad42f8680a022c3214d032d4b408ac8995d3
+static/js/2.d615869a.chunk.js,1586351226562,6c42fbde1e3559adc87dded8956e7580a99f9f119a63df2e65265157d6f1a46f
 static/js/2.d615869a.chunk.js.LICENSE.txt,1586351226562,74727db789fa0a696fe581244653adf4b10e75bb31caec1d6c628a68617665d6
+static/js/2.d615869a.chunk.js.map,1586351226563,4fb34988f2a2d4b754ec7dcee758f847177b39609b5f60369933984dd381ad0d
+static/js/main.cbe32a5b.chunk.js,1586351226818,ada07cabc83d1ea1e695c59f4846ad42f8680a022c3214d032d4b408ac8995d3
+static/js/main.cbe32a5b.chunk.js.map,1586351226793,e4404e164e38a7a8076a839f65b7896ae35591ab73d10af4ae2b02fb3d5444de
 static/js/runtime-main.891cac52.js,1586351226557,04a216b52283a30877d0643e87a750a2157bec4e8843f4dfcc1f02a9933e12b5
 static/js/runtime-main.891cac52.js.map,1586351226562,f1d775d637848326834d9ade23e34251001fdc050497240daafa4838523816c8
-asset-manifest.json,1586351226513,9bdae63ab9813e4828dd4dd4b39c2c71ba8ebadbc23780ac8eb61a63a8ed5ee3
-static/js/main.cbe32a5b.chunk.js.map,1586351226793,e4404e164e38a7a8076a839f65b7896ae35591ab73d10af4ae2b02fb3d5444de
-static/js/2.d615869a.chunk.js,1586351226562,6c42fbde1e3559adc87dded8956e7580a99f9f119a63df2e65265157d6f1a46f
-static/js/2.d615869a.chunk.js.map,1586351226563,4fb34988f2a2d4b754ec7dcee758f847177b39609b5f60369933984dd381ad0d
diff --git a/compforge/public/manifest.json b/compforge/public/manifest.json
index f9051fe711f47c36e1881c088d8bc880cf16b52e..1f2f141fafdeb1d31d85b008ec5132840c5e6362 100644
--- a/compforge/public/manifest.json
+++ b/compforge/public/manifest.json
@@ -1,6 +1,13 @@
 {
   "short_name": "React App",
   "name": "Create React App Sample",
+  "icons": [
+    {
+      "src": "favicon.ico",
+      "sizes": "64x64 32x32 24x24 16x16",
+      "type": "image/x-icon"
+    }
+  ],
   "start_url": ".",
   "display": "standalone",
   "theme_color": "#000000",
diff --git a/compforge/src/App.js b/compforge/src/App.js
index 1644ea2e640a76d1ef391111ab48c27e35d0a8bc..e0891dbee6e7ff7f9335ef03dbe02852c844385d 100644
--- a/compforge/src/App.js
+++ b/compforge/src/App.js
@@ -4,21 +4,27 @@ import firebase from './firebase'
 import SignedIn from './pages/SignedIn'
 import SignedOut from './pages/SignedOut'
 
-function App() {
-  // Get isSignedIn
-  // Hardcoded for now
-  // const [isSignedIn] = useState(true);
-
-  firebase.firestore().collection("forms").add({
-    name: "My first form",
-    author: "me"
-  })
+firebase.auth().onAuthStateChanged(function (user) {
+  if (user) {
+    var displayName = user.displayName;
+    var email = user.email;
+    var emailVerified = user.emailVerified;
+    var photoURL = user.photoURL;
+    var isAnonymous = user.isAnonymous;
+    var uid = user.uid;
+    var providerData = user.providerData;
+  }
+  else {
+    
+  }
+});
 
+function App() {
+  var user = firebase.auth().currentUser;
   return (
     <div className="App">
       <header className="App-header">
-        {/* {isSignedIn ? <SignedIn /> : <SignedOut />} */}
-        <SignedIn />
+        {user ? <SignedIn /> : <SignedOut />}
       </header>
     </div>
   );
diff --git a/compforge/src/pages/SignedOut/SignIn.js b/compforge/src/pages/SignedOut/SignIn.js
index 314f1549b840e6eda7c55a47620478296fe47fd3..4dc775bcc5c74c8ad75a82176b2812fd1ec027e0 100644
--- a/compforge/src/pages/SignedOut/SignIn.js
+++ b/compforge/src/pages/SignedOut/SignIn.js
@@ -12,6 +12,7 @@ import LockOutlinedIcon from '@material-ui/icons/LockOutlined';
 import Typography from '@material-ui/core/Typography';
 import { makeStyles } from '@material-ui/core/styles';
 import Container from '@material-ui/core/Container';
+import firebase from '../../firebase'
 
 function Copyright() {
   return (
@@ -49,6 +50,23 @@ const useStyles = makeStyles((theme) => ({
 export default function SignIn() {
   const classes = useStyles();
 
+  function signInUser() {
+
+    var email = document.getElementById('email').value;
+    var password = document.getElementById('password').value;
+
+    firebase.auth().signInWithEmailAndPassword(email, password).catch(function (error) {
+      var errorCode = error.code;
+      var errorMessage = error.message;
+      if (errorCode === 'auth/wrong-password') {
+        alert('Wrong password.');
+      } else {
+        alert(errorMessage);
+      }
+      console.log(error);
+    });
+  }
+
   return (
     <Container component="main" maxWidth="xs">
       <CssBaseline />
@@ -92,6 +110,7 @@ export default function SignIn() {
             variant="contained"
             color="primary"
             className={classes.submit}
+            onClick={signInUser}
           >
             Sign In
           </Button>
diff --git a/compforge/src/pages/SignedOut/SignUp.js b/compforge/src/pages/SignedOut/SignUp.js
index a37a69f587d02f2bca3bc45d3d2f5daf5d4f680d..9645a237d24ee5bed6b3ed220859426710331dec 100644
--- a/compforge/src/pages/SignedOut/SignUp.js
+++ b/compforge/src/pages/SignedOut/SignUp.js
@@ -12,6 +12,7 @@ import LockOutlinedIcon from '@material-ui/icons/LockOutlined';
 import Typography from '@material-ui/core/Typography';
 import { makeStyles } from '@material-ui/core/styles';
 import Container from '@material-ui/core/Container';
+import firebase from '../../firebase'
 
 function Copyright() {
   return (
@@ -49,6 +50,23 @@ const useStyles = makeStyles((theme) => ({
 export default function SignUp() {
   const classes = useStyles();
 
+  function signUpUser() {
+
+    var email = document.getElementById('email').value;
+    var password = document.getElementById('password').value;
+
+    firebase.auth().createUserWithEmailAndPassword(email, password).catch(function (error) {
+      var errorCode = error.code;
+      var errorMessage = error.message;
+      if (errorCode === 'auth/weak-password') {
+        alert('The password is too weak.');
+      } else {
+        alert(errorMessage);
+      }
+      console.log(error);
+    });
+  }
+
   return (
     <Container component="main" maxWidth="xs">
       <CssBaseline />
@@ -120,6 +138,7 @@ export default function SignUp() {
             variant="contained"
             color="primary"
             className={classes.submit}
+            onClick={signUpUser}
           >
             Sign Up
           </Button>