diff --git a/backend/public/static/js/manifest.2ae2e69a05c33dfc65f8.js.map b/backend/public/static/js/manifest.2ae2e69a05c33dfc65f8.js.map
index ea5377adcc4ea198a56b75ebbbeb6400a6f92e89..4035be7441929b3151b3aa5d9ec57dd4fe91850d 100644
--- a/backend/public/static/js/manifest.2ae2e69a05c33dfc65f8.js.map
+++ b/backend/public/static/js/manifest.2ae2e69a05c33dfc65f8.js.map
@@ -1,5 +1 @@
-<<<<<<< HEAD
-{"version":3,"sources":["webpack:///webpack/bootstrap 79d695f25d8b03028db3"],"names":["parentJsonpFunction","window","chunkIds","moreModules","executeModules","moduleId","chunkId","result","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","shift","__webpack_require__","s","installedModules","2","exports","module","l","m","c","d","name","getter","o","defineProperty","configurable","enumerable","get","n","__esModule","object","property","p","oe","err","console","error"],"mappings":"aACA,IAAAA,EAAAC,OAAA,aACAA,OAAA,sBAAAC,EAAAC,EAAAC,GAIA,IADA,IAAAC,EAAAC,EAAAC,EAAAC,EAAA,EAAAC,KACQD,EAAAN,EAAAQ,OAAoBF,IAC5BF,EAAAJ,EAAAM,GACAG,EAAAL,IACAG,EAAAG,KAAAD,EAAAL,GAAA,IAEAK,EAAAL,GAAA,EAEA,IAAAD,KAAAF,EACAU,OAAAC,UAAAC,eAAAC,KAAAb,EAAAE,KACAY,EAAAZ,GAAAF,EAAAE,IAIA,IADAL,KAAAE,EAAAC,EAAAC,GACAK,EAAAC,QACAD,EAAAS,OAAAT,GAEA,GAAAL,EACA,IAAAI,EAAA,EAAYA,EAAAJ,EAAAM,OAA2BF,IACvCD,EAAAY,IAAAC,EAAAhB,EAAAI,IAGA,OAAAD,GAIA,IAAAc,KAGAV,GACAW,EAAA,GAIA,SAAAH,EAAAd,GAGA,GAAAgB,EAAAhB,GACA,OAAAgB,EAAAhB,GAAAkB,QAGA,IAAAC,EAAAH,EAAAhB,IACAG,EAAAH,EACAoB,GAAA,EACAF,YAUA,OANAN,EAAAZ,GAAAW,KAAAQ,EAAAD,QAAAC,IAAAD,QAAAJ,GAGAK,EAAAC,GAAA,EAGAD,EAAAD,QAKAJ,EAAAO,EAAAT,EAGAE,EAAAQ,EAAAN,EAGAF,EAAAS,EAAA,SAAAL,EAAAM,EAAAC,GACAX,EAAAY,EAAAR,EAAAM,IACAhB,OAAAmB,eAAAT,EAAAM,GACAI,cAAA,EACAC,YAAA,EACAC,IAAAL,KAMAX,EAAAiB,EAAA,SAAAZ,GACA,IAAAM,EAAAN,KAAAa,WACA,WAA2B,OAAAb,EAAA,SAC3B,WAAiC,OAAAA,GAEjC,OADAL,EAAAS,EAAAE,EAAA,IAAAA,GACAA,GAIAX,EAAAY,EAAA,SAAAO,EAAAC,GAAsD,OAAA1B,OAAAC,UAAAC,eAAAC,KAAAsB,EAAAC,IAGtDpB,EAAAqB,EAAA,IAGArB,EAAAsB,GAAA,SAAAC,GAA8D,MAApBC,QAAAC,MAAAF,GAAoBA","file":"static/js/manifest.2ae2e69a05c33dfc65f8.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tvar parentJsonpFunction = window[\"webpackJsonp\"];\n \twindow[\"webpackJsonp\"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) {\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [], result;\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n \t\tif(executeModules) {\n \t\t\tfor(i=0; i < executeModules.length; i++) {\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = executeModules[i]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t};\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// objects to store loaded and loading chunks\n \tvar installedChunks = {\n \t\t2: 0\n \t};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 79d695f25d8b03028db3"],"sourceRoot":""}
-=======
 {"version":3,"sources":["webpack:///webpack/bootstrap 9a1e0d9f46f089fcbcf1"],"names":["parentJsonpFunction","window","chunkIds","moreModules","executeModules","moduleId","chunkId","result","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","shift","__webpack_require__","s","installedModules","2","exports","module","l","m","c","d","name","getter","o","defineProperty","configurable","enumerable","get","n","__esModule","object","property","p","oe","err","console","error"],"mappings":"aACA,IAAAA,EAAAC,OAAA,aACAA,OAAA,sBAAAC,EAAAC,EAAAC,GAIA,IADA,IAAAC,EAAAC,EAAAC,EAAAC,EAAA,EAAAC,KACQD,EAAAN,EAAAQ,OAAoBF,IAC5BF,EAAAJ,EAAAM,GACAG,EAAAL,IACAG,EAAAG,KAAAD,EAAAL,GAAA,IAEAK,EAAAL,GAAA,EAEA,IAAAD,KAAAF,EACAU,OAAAC,UAAAC,eAAAC,KAAAb,EAAAE,KACAY,EAAAZ,GAAAF,EAAAE,IAIA,IADAL,KAAAE,EAAAC,EAAAC,GACAK,EAAAC,QACAD,EAAAS,OAAAT,GAEA,GAAAL,EACA,IAAAI,EAAA,EAAYA,EAAAJ,EAAAM,OAA2BF,IACvCD,EAAAY,IAAAC,EAAAhB,EAAAI,IAGA,OAAAD,GAIA,IAAAc,KAGAV,GACAW,EAAA,GAIA,SAAAH,EAAAd,GAGA,GAAAgB,EAAAhB,GACA,OAAAgB,EAAAhB,GAAAkB,QAGA,IAAAC,EAAAH,EAAAhB,IACAG,EAAAH,EACAoB,GAAA,EACAF,YAUA,OANAN,EAAAZ,GAAAW,KAAAQ,EAAAD,QAAAC,IAAAD,QAAAJ,GAGAK,EAAAC,GAAA,EAGAD,EAAAD,QAKAJ,EAAAO,EAAAT,EAGAE,EAAAQ,EAAAN,EAGAF,EAAAS,EAAA,SAAAL,EAAAM,EAAAC,GACAX,EAAAY,EAAAR,EAAAM,IACAhB,OAAAmB,eAAAT,EAAAM,GACAI,cAAA,EACAC,YAAA,EACAC,IAAAL,KAMAX,EAAAiB,EAAA,SAAAZ,GACA,IAAAM,EAAAN,KAAAa,WACA,WAA2B,OAAAb,EAAA,SAC3B,WAAiC,OAAAA,GAEjC,OADAL,EAAAS,EAAAE,EAAA,IAAAA,GACAA,GAIAX,EAAAY,EAAA,SAAAO,EAAAC,GAAsD,OAAA1B,OAAAC,UAAAC,eAAAC,KAAAsB,EAAAC,IAGtDpB,EAAAqB,EAAA,IAGArB,EAAAsB,GAAA,SAAAC,GAA8D,MAApBC,QAAAC,MAAAF,GAAoBA","file":"static/js/manifest.2ae2e69a05c33dfc65f8.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tvar parentJsonpFunction = window[\"webpackJsonp\"];\n \twindow[\"webpackJsonp\"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) {\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [], result;\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n \t\tif(executeModules) {\n \t\t\tfor(i=0; i < executeModules.length; i++) {\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = executeModules[i]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t};\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// objects to store loaded and loading chunks\n \tvar installedChunks = {\n \t\t2: 0\n \t};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 9a1e0d9f46f089fcbcf1"],"sourceRoot":""}
->>>>>>> fbb1f6757ddefc6850de9f9acb5f1ed6fbc8b18b
diff --git a/frontend/package.json b/frontend/package.json
index a9ea6cd0f69cee3d96d62a9c7226267886e6c111..e97bb1e5bfeef540b7220be5aef2bdd2799f3756 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -41,6 +41,7 @@
     "postcss-import": "^11.0.0",
     "postcss-loader": "^2.0.8",
     "postcss-url": "^7.2.1",
+    "prettier": "^1.19.1",
     "rimraf": "^2.6.0",
     "semver": "^5.3.0",
     "shelljs": "^0.7.6",
diff --git a/frontend/src/App.vue b/frontend/src/App.vue
index 8db15eb55e507e72c322aeff70b1b3b2ce9446e9..cc9719bad0320b31c53331407ecbf750b9260ec4 100644
--- a/frontend/src/App.vue
+++ b/frontend/src/App.vue
@@ -1,22 +1,126 @@
 <template>
-  <v-div id="app">
-    <router-view/>
-  </v-div>
+  <div id="app" class="page-container">
+    <md-app md-mode="fixed-last">
+      <md-app-toolbar class="md-large md-dense md-primary">
+        <div class="md-toolbar-row">
+          <span class="md-title">MajorBook </span>
+        </div>
+
+        <div style="flex:1">
+          <template v-if="logged_io">
+            ID :
+            <input v-model="id" placeholder="ID" type="text" required />
+            PASSWORD :
+            <input
+              v-model="pwd"
+              placeholder="password"
+              type="password"
+              required
+            />
+            <button v-on:click="login" class="btn">Login</button>
+
+            <md-button :href="signup" class="btn">Sign up</md-button>
+          </template>
+          <template v-else>
+            <button class="btn">거래현황</button>
+            <button v-on:click="logout" class="btn">Logout</button>
+          </template>
+        </div>
+
+        <div class="md-toolbar-row">
+          <md-tabs class="md-primary" style="margin: auto; height: 30px">
+            <md-tab id="tab-home" md-label="Home" to="/"> </md-tab>
+            <md-tab
+              id="tab-dashBoard"
+              md-label="Dashboard"
+              to="/dashBoard"
+            ></md-tab>
+            <md-tab id="tab-profile" md-label="Profile" to="/profile"></md-tab>
+            <md-tab
+              id="tab-list"
+              md-label="전공서적보기"
+              to="/BookSearchPage"
+            ></md-tab>
+          </md-tabs>
+        </div>
+      </md-app-toolbar>
+    </md-app>
+    <router-view />
+  </div>
 </template>
 
 <script>
+import Vue from "vue";
+import VueMaterial from "vue-material";
+import "vue-material/dist/vue-material.min.css";
+
+Vue.use(VueMaterial);
+
 export default {
-  name: 'App'
-}
+  name: "App",
+  data() {
+    return {
+      id: "",
+      pwd: "",
+      flag: false,
+      url: {
+        bookIndex: "/api/books"
+      }
+    };
+  },
+  computed: {
+    changeID() {
+      this.id = `${this.id}`;
+    },
+    changePWD() {
+      this.pwd = `${this.pwd}`;
+    },
+    logged_io() {
+      if (!this.flag) return true;
+      else return false;
+    }
+  },
+  methods: {
+    login: function() {
+      if (this.id != "" && this.pwd != "") {
+        alert(this.id + "  login!!");
+        this.flag = !this.flag;
+        this.id = "";
+        this.pwd = "";
+      } else alert("ID/PASSWORD를 입력하세요");
+    },
+    logout: function() {
+      this.flag = !this.flag;
+    }
+  }
+};
 </script>
 
 <style>
 #app {
-  font-family: 'Avenir', Helvetica, Arial, sans-serif;
+  font-family: "Avenir", Helvetica, Arial, sans-serif;
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   text-align: center;
   color: #2c3e50;
-  margin-top: 60px;
+  height: 100%;
+}
+
+.btn {
+  color: #00b7ff;
+  background-color: #a6a6a6;
+  border-radius: 15%;
+}
+
+h1 {
+  text-align: left;
+  font-size: 35px;
+  color: #00b7ff;
+  text-decoration: none;
+}
+
+img {
+  height: 100%;
+  width: 100%;
 }
 </style>
diff --git a/frontend/src/components/BookIndexPage.vue b/frontend/src/components/BookIndexPage.vue
new file mode 100644
index 0000000000000000000000000000000000000000..17753634013d1c4c1923d53e64fe213f9c5664a2
--- /dev/null
+++ b/frontend/src/components/BookIndexPage.vue
@@ -0,0 +1,49 @@
+<template>
+    <div class="books">
+        <h1>서적 목록</h1>
+        <div v-for="book in books" class="book" v-bind:key="book.id">
+            <img v-bind:src="book.cover" class="cover">
+            <div>
+                <strong>제목: {{book.name}}</strong> <br />
+                <i>작가: {{book.author}}</i> <br />
+                출판사: {{book.publisher}}
+                <router-link :to="{ name: 'bookdetail', params: { id: book.id }}">더보기</router-link>
+                
+                <div>
+                    <button v-on:click="book.buycount++">구매</button> 구매현황: {{book.buycount}}
+                    <button v-on:click="book.sellcount++">판매</button> 판매현황: {{book.sellcount}}
+                </div>
+                
+                <hr />
+            </div>
+        </div>
+    </div>
+</template>
+
+<script>
+export default {
+    created() {
+        this.$http.get('/api/books').then((response) => {
+            this.books = response.data;
+        });
+    },
+    data() {
+        return {
+            books: [],
+        };
+    },
+    methods: {
+        increaseSellCount() {
+            this.book.sellcount += 1;
+            this.$http.post("/api/books", this.book)
+                .then(res => {
+                    console.log('Increase Buy count success');  
+                })
+                .catch(err => {
+                    console.log('Increase Buy count fail');
+                });
+            // this.$router.push({ name: 'bookdetail' });
+        }
+    }
+};
+</script>
\ No newline at end of file
diff --git a/frontend/src/components/HelloWorld.vue b/frontend/src/components/HelloWorld.vue
deleted file mode 100644
index 1c19f2a399d4735f5a3dd4ae1456f476f3de2fa4..0000000000000000000000000000000000000000
--- a/frontend/src/components/HelloWorld.vue
+++ /dev/null
@@ -1,113 +0,0 @@
-<template>
-  <div class="hello">
-    <h1>{{ msg }}</h1>
-    <h2>Essential Links</h2>
-    <ul>
-      <li>
-        <a
-          href="https://vuejs.org"
-          target="_blank"
-        >
-          Core Docs
-        </a>
-      </li>
-      <li>
-        <a
-          href="https://forum.vuejs.org"
-          target="_blank"
-        >
-          Forum
-        </a>
-      </li>
-      <li>
-        <a
-          href="https://chat.vuejs.org"
-          target="_blank"
-        >
-          Community Chat
-        </a>
-      </li>
-      <li>
-        <a
-          href="https://twitter.com/vuejs"
-          target="_blank"
-        >
-          Twitter
-        </a>
-      </li>
-      <br>
-      <li>
-        <a
-          href="http://vuejs-templates.github.io/webpack/"
-          target="_blank"
-        >
-          Docs for This Template
-        </a>
-      </li>
-    </ul>
-    <h2>Ecosystem</h2>
-    <ul>
-      <li>
-        <a
-          href="http://router.vuejs.org/"
-          target="_blank"
-        >
-          vue-router
-        </a>
-      </li>
-      <li>
-        <a
-          href="http://vuex.vuejs.org/"
-          target="_blank"
-        >
-          vuex
-        </a>
-      </li>
-      <li>
-        <a
-          href="http://vue-loader.vuejs.org/"
-          target="_blank"
-        >
-          vue-loader
-        </a>
-      </li>
-      <li>
-        <a
-          href="https://github.com/vuejs/awesome-vue"
-          target="_blank"
-        >
-          awesome-vue
-        </a>
-      </li>
-    </ul>
-  </div>
-</template>
-
-<script>
-export default {
-  name: 'HelloWorld',
-  data () {
-    return {
-      msg: 'Welcome to Your Vue.js App'
-    }
-  }
-}
-</script>
-
-<!-- Add "scoped" attribute to limit CSS to this component only -->
-<style scoped>
-h1, h2 {
-  font-weight: normal;
-}
-ul {
-  list-style-type: none;
-  padding: 0;
-}
-li {
-  display: inline-block;
-  margin: 0 10px;
-}
-a {
-  color: #42b983;
-}
-</style>
diff --git a/frontend/src/components/buy.vue b/frontend/src/components/buy.vue
deleted file mode 100644
index de8bac6ac6219c468d61f20f17350221e242c0e2..0000000000000000000000000000000000000000
--- a/frontend/src/components/buy.vue
+++ /dev/null
@@ -1,24 +0,0 @@
-<template>
-    <h1> buy</h1>
-</template>
-
-<script>
-export default{
-    data() {
-        return{
-            name : '',
-            univ : '',
-            email : ''
-        }
-    },
-    computed:{
-    },
-    methods:{
-    }
-    }
-</script>
-
-<style lang='css'>
-
-
-</style>
diff --git a/frontend/src/components/dashBoard.vue b/frontend/src/components/dashBoard.vue
new file mode 100644
index 0000000000000000000000000000000000000000..965252298026771d46c589ed8118ab5157ebd85a
--- /dev/null
+++ b/frontend/src/components/dashBoard.vue
@@ -0,0 +1,15 @@
+<template>
+  <!DOCTYPE html>
+  <html lang="en">
+    <head>
+      <meta charset="UTF-8" />
+      <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+      <title>Majorbook</title>
+    </head>
+    <body>
+      <h1>my page 1</h1>
+
+      <button>수정하기</button>
+    </body>
+  </html>
+</template>
diff --git a/frontend/src/components/home.vue b/frontend/src/components/home.vue
index 71cbfe17fdde5082f413a5d791ec66beae237ea8..d452f96527e84508d93467c1cc9391abb001d4fd 100644
--- a/frontend/src/components/home.vue
+++ b/frontend/src/components/home.vue
@@ -1,117 +1,13 @@
 <template>
   <div>
     <div class="md-layout" style="display: block; color:#F6F6F6">
-       <div class="md-layout-item"><img src='../../static/img/img1.jpg'></div>
-       <div class="md-layout-item" style="backgroundColor:#F2CB61; height:30px;">이용방법</div>
-       <div class="md-layout-item" style="backgroundColor:#353535;">Implemented by 202-WebSysDesign</div>
+      <div class="md-layout-item"><img src="../../static/img/img2.jpg" /></div>
+      <div class="md-layout-item" style="backgroundColor:#F2CB61; height:30px;">
+        이용방법
+      </div>
+      <div class="md-layout-item" style="backgroundColor:#353535;">
+        Implemented by 202-WebSysDesign
+      </div>
     </div>
   </div>
 </template>
-
-<script>
-export default{
-    data() {
-        return{
-          id : '',
-          pwd : '',
-          flag : false
-  
-        }
-    },
-    computed:{
-        changeID(){
-            this.id = `${this.id}`
-        },
-        changePWD() {
-            this.pwd = `${this.pwd}`
-        },
-        logged_io() {
-            if(!this.flag) return true;
-            else return false;
-        }
-    },
-    methods:{
-        login: function(){
-          if(this.id!='' && this.pwd!=''){
-            alert(this.id+"  login!!")
-            this.flag = !this.flag
-            this.id = ''
-            this.pwd = ''
-          }else alert('ID/PASSWORD를 입력하세요')
-        },
-        logout: function(){
-            this.flag = !this.flag
-        },
-    }
-    }
-</script>
-
-
-<style lang='css'>
-html,body {
-  text-align: center;
-  margin:0;
-  width:100%;
-  font: 14px "Lucida Grande", Helvetica, Arial, sans-serif;
-}
-
-.nav a {
-  color: #00B7FF;
-  text-align: center;
-  padding-right: 8%;
-  padding-left: 8%;
-  font-size: 18px;
-  text-decoration: none;
-}
-
-.nav {
-  background-color:#333;
-  overflow:hidden;
-}
-
-.header{
-  margin: 15px;
-  height: 12%;
-  font-size: 10px;
-}
-
-.btn{
-  color: #00B7FF;
-  background-color: #333;
-  border-radius: 15%;
-}
-
-
-h1{ 
-  text-align: left;
-  font-size: 35px;
-}
-
-.section{
-  height: 500px;
-}
-
-img{
-  height: 100%;
-  width: 100%;
-}
-
-.aside{
- height: 40px;
- background-color:rgb(255, 220, 123);
-}
-
-.footer{
- height: 20px;
- color:white;
- background-color:#333;
-}
-
-.myPage{
-  display: block;
-  margin-left: auto;
-  margin-right: auto;
-  height: 400px;
-}
-
-</style>
diff --git a/frontend/src/components/myPage.vue b/frontend/src/components/myPage.vue
deleted file mode 100644
index e8b04fe191cfcf6a2fa23afc6dfbcbf4d432fcbc..0000000000000000000000000000000000000000
--- a/frontend/src/components/myPage.vue
+++ /dev/null
@@ -1,15 +0,0 @@
-<template>
-  <!DOCTYPE html>
-  <html lang="en">
-    <head>
-        <meta charset="UTF-8">
-        <meta name='viewport' content='width=device-width, initial-scale=1.0'>
-        <title>Majorbook-My Page</title>
-    </head>
-    <body>
-        <h1>My Page</h1>
-
-        <button>수정하기</button>
-    </body>
-  </html>
-</template>
\ No newline at end of file
diff --git a/frontend/src/components/profile.vue b/frontend/src/components/profile.vue
new file mode 100644
index 0000000000000000000000000000000000000000..5b6170dbfbd53d42dcf6dff693a36f20f88a2f25
--- /dev/null
+++ b/frontend/src/components/profile.vue
@@ -0,0 +1,15 @@
+<template>
+  <!DOCTYPE html>
+  <html lang="en">
+    <head>
+      <meta charset="UTF-8" />
+      <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+      <title>Majorbook</title>
+    </head>
+    <body>
+      <h1>My Page-2</h1>
+      dfsd
+      <button>수정하기</button>
+    </body>
+  </html>
+</template>
diff --git a/frontend/src/components/sell.vue b/frontend/src/components/sell.vue
deleted file mode 100644
index 0bca32e74b919713d2d71a5fea7d06774dc8dfe0..0000000000000000000000000000000000000000
--- a/frontend/src/components/sell.vue
+++ /dev/null
@@ -1,24 +0,0 @@
-<template>
-    <h1> sell </h1>
-</template>
-
-<script>
-export default{
-    data() {
-        return{
-            name : '',
-            univ : '',
-            email : ''
-        }
-    },
-    computed:{
-    },
-    methods:{
-    }
-    }
-</script>
-
-<style lang='css'>
-
-
-</style>
diff --git a/frontend/src/router/index.js b/frontend/src/router/index.js
index da4c3f25960ba2e6dd3816c2d2683fe8aa3b657e..a556605ac568b17b59b055a6d0cda6ca3d311f3b 100644
--- a/frontend/src/router/index.js
+++ b/frontend/src/router/index.js
@@ -1,45 +1,50 @@
-import Vue from 'vue'
-import Router from 'vue-router';
-Vue.use(Router)
-import home from '@/components/home'
-import myPage from '@/components/myPage'
-import buy from '@/components/buy'
-import sell from '@/components/sell'
-import signup from '@/components/signup'
-import BookSearchPage from '@/components/BookSearchPage'
+import Vue from "vue";
+import Router from "vue-router";
+Vue.use(Router);
+import home from "@/components/home";
+import dashBoard from "@/components/dashBoard";
+import profile from "@/components/profile";
+import signup from "@/components/signup";
+import BookSearchPage from "@/components/BookSearchPage";
+import BookIndexPage from "@/components/BookIndexPage";
+import BookShowPage from "@/components/BookShowPage";
 
 export default new Router({
   routes: [
     {
-      path: '/',
-      name: 'home',
+      path: "/",
+      name: "home",
       component: home
     },
     {
-      path: '/myPage',
-      name : 'myPage',
-      component: myPage
+      path: "/dashBoard",
+      name: "dashBoard",
+      component: dashBoard
     },
     {
-      path: '/buy',
-      name: 'buy',
-      component: buy
+      path: "/profile",
+      name: "profile",
+      component: profile
     },
     {
-      path: '/sell',
-      name: 'sell',
-      component: sell
+      path: "/signup",
+      name: "signup",
+      component: signup
     },
     {
-      path: '/signup',
-      name: 'signup',
-      component: signup
+      path: "/BookIndexPage",
+      name: "bookindex",
+      component: BookIndexPage
     },
     {
-      path: '/BookSearchPage',
-      name: 'bookindex',
+      path: "/BookIndexPage:id",
+      name: "bookdetail",
+      component: BookShowPage
+    },
+    {
+      path: "/BookSearchPage",
+      name: "bookindex",
       component: BookSearchPage
     }
   ]
-})
-
+});
diff --git a/frontend/static/img/img1.jpg b/frontend/static/img/img1.jpg
deleted file mode 100644
index d3e6c67ea7e5cbde850ba2736b5732946b7afe23..0000000000000000000000000000000000000000
Binary files a/frontend/static/img/img1.jpg and /dev/null differ
diff --git a/frontend/static/img/img2.jpg b/frontend/static/img/img2.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..12c90818ae52c1554d38b1fb8333677fff9e63c8
Binary files /dev/null and b/frontend/static/img/img2.jpg differ