+    
+      
-      
-        
-        
+    
+
+    
+      
+        
+
+        
+
+        
+          
+          {{ error }}
+        
+
+        
+          
+          Login successful! Redirecting to homepage...
+        
+
+        
       
-      
-    
-    
{{ error }}
+    
 
 
 
+
\ No newline at end of file
diff --git a/src/components/UserSignup.vue b/src/components/UserSignup.vue
new file mode 100644
index 0000000..bb7f18e
--- /dev/null
+++ b/src/components/UserSignup.vue
@@ -0,0 +1,344 @@
+
+  
+    
+
+    
+      
+        
+
+        
+
+        
+          
+          {{ error }}
+        
+
+        
+          
+          {{ successMessage }}
+        
+
+        
+          
Already have an account? Sign in
+        
+      
+    
+  
+
+
\ No newline at end of file
diff --git a/src/router/index.js b/src/router/index.js
index a5868bb..ec7f82c 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -1,16 +1,46 @@
-import { createRouter, createWebHistory } from 'vue-router';
-import Login from '../components/UserLogin.vue';
-import LoggedinPage from '@/components/LoggedinPage.vue';
+import { createRouter, createWebHistory } from 'vue-router'
 
 const routes = [
-  { path: '/', component: Login },
-  { path: '/logged-in', component: LoggedinPage}
-  //{ path: '/dashboard', component: () => import('../components/Dashboard.vue') }, // Placeholder for a dashboard page
-];
+  { 
+    path: '/', 
+    name: 'Home',
+    component: () => import('../components/Home.vue'),
+    meta: { title: 'RideAware – Home' } 
+  },
+  { 
+    path: '/login', 
+    name: 'Login',
+    component: () => import('../components/UserLogin.vue'),
+    meta: { title: 'RideAware – Sign In' } 
+  },
+  {
+    path: '/signup',
+    name: 'SignUp',
+    component: () => import('../components/UserSignup.vue'),
+    meta: { title: 'RideAware – Sign Up' }
+  },
+  
+]
 
 const router = createRouter({
   history: createWebHistory(),
   routes,
-});
+})
 
-export default router;
+router.beforeEach((to, from, next) => {
+  if (to.meta.requiresAuth) {
+    const isLoggedIn = !!(localStorage.getItem('user') || sessionStorage.getItem('user'))
+    if (!isLoggedIn) {
+      next({ name: 'Login' })
+      return
+    }
+  }
+  next()
+})
+
+router.afterEach((to) => {
+  const defaultTitle = 'RideAware'
+  document.title = to.meta.title || defaultTitle
+})
+
+export default router
\ No newline at end of file
diff --git a/vue.config.js b/vue.config.js
index 910e297..51a265b 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -1,4 +1,5 @@
 const { defineConfig } = require('@vue/cli-service')
 module.exports = defineConfig({
-  transpileDependencies: true
+  transpileDependencies: true,
+  lintOnSave: true
 })