diff --git a/components/app.vue b/components/app.vue
index d300780..b81436a 100644
--- a/components/app.vue
+++ b/components/app.vue
@@ -1,12 +1,13 @@
 <template>
 <div class="panel">
 
-<side-bar :role="user.status">
+<side-bar :role="user.status" :active="active">
 </side-bar>
 
+<div>{{active}}, {{hash}}</div>
+
 <div v-if="loading">
 </div>
-
 <div v-else-if="!loading"></div>
 
 </div>
@@ -22,12 +23,32 @@ const user = {
 	status: 1,
  }
 
+function active() {
+	if (this.hash == '' || this.hash == '#') {
+		return 1
+	} else if (/^#new\/?/.exec(this.hash)) {
+		return 2
+	} else if (/^#estimates\/?/.exec(this.hash)) {
+		return 3
+	} else if (/^#settings\/?/.exec(this.hash)) {
+		return 4
+	} else if (/^#sign-out\/?/.exec(this.hash)) {
+		return 5
+	} else {
+		return 0
+	}
+}
+
 export default {
 	components: {SideBar},
+	computed: {active},
 	data() {
 		return {
-			loading: true, user: user
+			loading: true, user: user, hash: ''
 		}
+	},
+	created() {
+		window.onhashchange = () => this.hash = window.location.hash
 	}
 }
 </script>
diff --git a/components/sidebar.vue b/components/sidebar.vue
index 1cbbb74..84ff09f 100644
--- a/components/sidebar.vue
+++ b/components/sidebar.vue
@@ -3,7 +3,7 @@
 <img
 src="/assets/image/mintberry.jpg">
 
-<li>
+<a href="" :class="active == 1 ? 'active' : ''">
 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"
 fill="currentColor" class="bi bi-house" viewBox="0 0 16 16"> <path
 fill-rule="evenodd" d="M2 13.5V7h1v6.5a.5.5 0 0 0 .5.5h9a.5.5 0 0 0
@@ -13,9 +13,9 @@ fill-rule="evenodd" d="M7.293 1.5a1 1 0 0 1 1.414 0l6.647 6.646a.5.5 0 0
 1-.708.708L8 2.207 1.354 8.854a.5.5 0 1 1-.708-.708L7.293 1.5z"/>
 </svg>
 <span>Home</span>
-</li>
+</a>
 
-<li>
+<a href="#new" :class="active == 2 ? 'active' : ''">
 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"
 fill="currentColor" class="bi bi-journal-plus" viewBox="0 0 16 16"> <path
 fill-rule="evenodd" d="M8 5.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V10a.5.5
@@ -26,9 +26,9 @@ fill-rule="evenodd" d="M8 5.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V10a.5.5
 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0
 0 1 0 1h-2a.5.5 0 0 1 0-1H1z"/> </svg>
 <span>New</span>
-</li>
+</a>
 
-<li>
+<a href="#estimates" :class="active == 3 ? 'active' : ''">
 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"
 fill="currentColor" class="bi bi-journals" viewBox="0 0 16 16"> <path d="M5
 0h8a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2 2 2 0 0 1-2 2H3a2 2 0 0 1-2-2h1a1 1 0 0 0 1
@@ -38,9 +38,9 @@ d="M1 6v-.5a.5.5 0 0 1 1 0V6h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 3v-.5a.5.5
 0 0 1 1 0V9h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1H1zm0 2.5v.5H.5a.5.5 0 0 0 0
 1h2a.5.5 0 0 0 0-1H2v-.5a.5.5 0 0 0-1 0z"/> </svg>
 <span>Estimates</span>
-</li>
+</a>
 
-<li>
+<a href="#settings" :class="active == 4 ? 'active' : ''">
 <svg width="15px" height="15px" viewBox="0 0 15 15" fill="none"
 xmlns="http://www.w3.org/2000/svg"> <path fill-rule="evenodd"
 clip-rule="evenodd" d="M5.944 0.5L5.858 0.936707L5.52901 2.53467C5.00301 2.73554
@@ -62,21 +62,21 @@ d="M9.49963 7.49542C9.49963 8.5987 8.60363 9.49414 7.49963 9.49414C6.39563
 5.49677C8.60363 5.49677 9.49963 6.39214 9.49963 7.49542Z" stroke="currentColor"
 stroke-linecap="square" stroke-linejoin="round"/> </svg>
 <span>Settings</span>
-</li>
+</a>
 
-<li>
+<a href="#sign-out" :class="active == 5 ? 'active' : ''">
 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-door-closed" viewBox="0 0 16 16">
   <path d="M3 2a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v13h1.5a.5.5 0 0 1 0 1h-13a.5.5 0 0 1 0-1H3V2zm1 13h8V2H4v13z"/>
   <path d="M9 9a1 1 0 1 0 2 0 1 1 0 0 0-2 0z"/>
 </svg>
 <span>Sign out</span>
-</li>
+</a>
 
 </menu>
 </template>
 
 <script>
 export default {
-	props: ['role'],
+	props: ['role', 'active'],
 }
 </script>
diff --git a/main.js b/main.js
index 24adc3c..0d78849 100644
--- a/main.js
+++ b/main.js
@@ -2,4 +2,4 @@ import {createApp} from "vue"
 import App from "./components/app.vue"
 import "./assets/main.css"
 
-createApp(App).mount("#app")
+const app = createApp(App).mount("#app")
diff --git a/webpack.config.js b/webpack.config.js
index f25ebd0..875577b 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -22,6 +22,7 @@ module.exports = {
 			}
 		}
 	},
+	devtool: 'inline-source-map',
 	// Required for also applying rules to sections of SFC
 	plugins: [new VueLoaderPlugin()],
 };