{"id":1595,"date":"2021-08-27T10:53:18","date_gmt":"2021-08-27T02:53:18","guid":{"rendered":"https:\/\/www.strongd.net\/?p=1595"},"modified":"2021-08-27T10:53:18","modified_gmt":"2021-08-27T02:53:18","slug":"create-login-signup-ui-screens-in-vue-with-bootstrap-4","status":"publish","type":"post","link":"https:\/\/www.strongd.net\/?p=1595","title":{"rendered":"Create Login Signup UI Screens in Vue with Bootstrap 4"},"content":{"rendered":"<p>In this tutorial, we are going to create responsive Login &amp; Signup UI screens using the Bootstrap 4 CSS framework in the Vue.js application.<\/p>\n<p>We will create a Login screen, Sign up screen, and Forgot Password screen from scratch.<\/p>\n<p><a href=\"https:\/\/getbootstrap.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Bootstrap<\/a>\u00a0is a free and open-source CSS based UI framework, and It is used for rapid front-end development. It offers plenty of UI components that are 100% responsive and can work on any device size smoothly. It contains CSS- and JavaScript-based design templates for typography, forms, buttons, navigation, and other interface components.<\/p>\n<div class=\"vdo-ads-wrapper ad-cls-block-580x250\">\n<div id=\"bsa-zone_1574377626597-7_123456\" class=\"bsa-ad\"><a href=\"https:\/\/vuejs.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">Vue.js<\/a>\u00a0is a robust progressive open-source JavaScript framework, and It is used use by web developers for creating excellent user interfaces and single-page applications. It makes app development quite simple and straightforward. The primary factor of Vue is that it is lightweight, flexible, modular, and highly performant.<\/div>\n<\/div>\n<p>Let\u2019s start creating Login and Registration user-interface templates for Vue.js.<\/p>\n<p>&nbsp;<\/p>\n<div id=\"tc_9706_01\" class=\"LinkedBlock\">\n<h2>Vue.js Login &amp; Signup UI Example<\/h2>\n<p>You need to have following tools and frameworks ready to get started with this tutorial:<\/p>\n<ul>\n<li>Vue CLI<\/li>\n<li>Vue<\/li>\n<li>Bootstrap 4<\/li>\n<li>Code Editor<\/li>\n<\/ul>\n<\/div>\n<div id=\"tc_9706_02\" class=\"LinkedBlock\">\n<h2>Generate Vue App with Vue CLI<\/h2>\n<p>The Vue CLI offers the standard tooling option for swift development in Vue, run the command to install Vue CLI.<\/p>\n<div class=\"vdo-ads-wrapper ad-cls-block-580x250\">\n<div id=\"bsa-zone_1574377501661-3_123456\" class=\"bsa-ad\"><\/div>\n<\/div>\n<pre class=\" language-markup\"><code class=\" language-bash\"><span class=\"token function\">npm<\/span> <span class=\"token function\">install<\/span> -g @vue\/cli\r\n\r\n<span class=\"token comment\"># or <\/span>\r\n\r\n<span class=\"token function\">yarn<\/span> global <span class=\"token function\">add<\/span> @vue\/cli\r\n<\/code><\/pre>\n<p>Make sure which\u00a0<a href=\"https:\/\/cli.vuejs.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">vue-cli<\/a>\u00a0version has been installed in your development system:<\/p>\n<pre class=\" language-markup\"><code class=\"  language-bash\">vue --version<\/code><\/pre>\n<p>Generate a new Vue.js project by running the command from Vue CLI.<\/p>\n<div class=\"vdo-ads-wrapper ad-cls-block-580x250\">\n<div id=\"bsa-zone_1574377674646-5_123456\" class=\"bsa-ad\"><\/div>\n<\/div>\n<pre class=\" language-markup\"><code class=\"  language-bash\">vue create vue-animated-ui<\/code><\/pre>\n<p>Answer Vue CLI questions with following choices.<\/p>\n<pre class=\" language-markup\"><code class=\" language-bash\"><span class=\"token comment\"># ? Please pick a preset: Manually select features<\/span>\r\n<span class=\"token comment\"># ? Check the features needed for your project: Babel, Router, CSS Pre-processors, Linter<\/span>\r\n<span class=\"token comment\"># ? Use history mode for router? (Requires proper server setup for index fallback in production) Yes<\/span>\r\n<span class=\"token comment\"># ? Pick a CSS pre-processor (PostCSS, Autoprefixer and CSS Modules are supported by default): Sass\/SCSS (with dart-sass)<\/span>\r\n<span class=\"token comment\"># ? Pick a linter \/ formatter config: Basic<\/span>\r\n<span class=\"token comment\"># ? Pick additional lint features: Lint on save<\/span>\r\n<span class=\"token comment\"># ? Where do you prefer placing config for Babel, ESLint, etc.? In package.json<\/span>\r\n<span class=\"token comment\"># ? Save this as a preset for future projects? (y\/N) No<\/span><\/code><\/pre>\n<p>Head over to project folder.<\/p>\n<pre class=\" language-markup\"><code class=\"  language-bash\">cd vue-animated-ui<\/code><\/pre>\n<p>Start to see the latest created Vue app on the browser window.<\/p>\n<pre class=\" language-markup\"><code class=\"  language-bash\">npm run serve<\/code><\/pre>\n<\/div>\n<div id=\"tc_9706_03\" class=\"LinkedBlock\">\n<h2>Adding Bootstrap 4 in Vue.js<\/h2>\n<p>To use the Bootstrap UI components, we need to install the Bootstrap module in our Vue app.<\/p>\n<pre class=\" language-markup\"><code class=\"  language-bash\"><span class=\"token function\">npm<\/span> <span class=\"token function\">install<\/span> bootstrap\r\n\r\n<span class=\"token comment\"># or<\/span>\r\n\r\n<span class=\"token function\">yarn<\/span> <span class=\"token function\">add<\/span> bootstrap<\/code><\/pre>\n<p>Import Bootstrap path in the\u00a0<strong>main.js<\/strong>\u00a0file. It makes Bootstrap module available throughout our app.<\/p>\n<pre class=\" language-markup\"><code class=\"  language-javascript\"><span class=\"token keyword\">import<\/span> Vue <span class=\"token keyword\">from<\/span> <span class=\"token string\">'vue'<\/span>\r\n<span class=\"token keyword\">import<\/span> App <span class=\"token keyword\">from<\/span> <span class=\"token string\">'.\/App.vue'<\/span>\r\n<span class=\"token keyword\">import<\/span> router <span class=\"token keyword\">from<\/span> <span class=\"token string\">'.\/router'<\/span>\r\n\r\n<span class=\"token keyword\">import<\/span> <span class=\"token string\">'bootstrap\/dist\/css\/bootstrap.min.css'<\/span>\r\n\r\nVue<span class=\"token punctuation\">.<\/span>config<span class=\"token punctuation\">.<\/span>productionTip <span class=\"token operator\">=<\/span> <span class=\"token boolean\">false<\/span>\r\n\r\n<span class=\"token keyword\">new<\/span> <span class=\"token class-name\">Vue<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">{<\/span>\r\n  router<span class=\"token punctuation\">,<\/span>\r\n  <span class=\"token function-variable function\">render<\/span><span class=\"token operator\">:<\/span> <span class=\"token parameter\">h<\/span> <span class=\"token operator\">=&gt;<\/span> <span class=\"token function\">h<\/span><span class=\"token punctuation\">(<\/span>App<span class=\"token punctuation\">)<\/span>\r\n<span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">.<\/span><span class=\"token function\">$mount<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">'#app'<\/span><span class=\"token punctuation\">)<\/span><\/code><\/pre>\n<p>We also need to define the Font Awesome icon CDN path in the public\/index.html. It allow us to add some useful icons in our Vue app.<\/p>\n<pre class=\" language-markup\"><code class=\" language-markup\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>link <span class=\"token attr-name\">rel<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>stylesheet<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token attr-name\">href<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/4.7.0\/css\/font-awesome.min.css<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span><\/code><\/pre>\n<\/div>\n<div id=\"tc_9706_04\" class=\"LinkedBlock\">\n<h2>Adding Global CSS in Vue.js Project<\/h2>\n<p>Let\u2019s look at the most asked question regarding Vue that how to add global styles via CSS in a Vue.js project.<\/p>\n<p>Create a\u00a0<strong>css<\/strong>\u00a0folder inside the\u00a0<strong>src\/assets<\/strong>\u00a0folder then create the main.css file in it.<\/p>\n<p>Define the global CSS path inside the\u00a0<strong>main.js<\/strong>\u00a0file just below the Bootstrap path.<\/p>\n<pre class=\" language-markup\"><code class=\"  language-javascript\"><span class=\"token keyword\">import<\/span> Vue <span class=\"token keyword\">from<\/span> <span class=\"token string\">'vue'<\/span>\r\n<span class=\"token keyword\">import<\/span> App <span class=\"token keyword\">from<\/span> <span class=\"token string\">'.\/App.vue'<\/span>\r\n<span class=\"token keyword\">import<\/span> router <span class=\"token keyword\">from<\/span> <span class=\"token string\">'.\/router'<\/span>\r\n\r\n<span class=\"token keyword\">import<\/span> <span class=\"token string\">'bootstrap\/dist\/css\/bootstrap.min.css'<\/span>\r\n<span class=\"token keyword\">import<\/span> <span class=\"token string\">'@\/assets\/css\/main.css'<\/span>\r\n\r\nVue<span class=\"token punctuation\">.<\/span>config<span class=\"token punctuation\">.<\/span>productionTip <span class=\"token operator\">=<\/span> <span class=\"token boolean\">false<\/span>\r\n\r\n<span class=\"token keyword\">new<\/span> <span class=\"token class-name\">Vue<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">{<\/span>\r\n  router<span class=\"token punctuation\">,<\/span>\r\n  <span class=\"token function-variable function\">render<\/span><span class=\"token operator\">:<\/span> <span class=\"token parameter\">h<\/span> <span class=\"token operator\">=&gt;<\/span> <span class=\"token function\">h<\/span><span class=\"token punctuation\">(<\/span>App<span class=\"token punctuation\">)<\/span>\r\n<span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">.<\/span><span class=\"token function\">$mount<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">'#app'<\/span><span class=\"token punctuation\">)<\/span><\/code><\/pre>\n<p>Add the common style of our primary authentication components in\u00a0<strong>assets\/css\/main.css<\/strong>\u00a0file.<\/p>\n<pre class=\" language-markup\"><code class=\" language-css\"><span class=\"token selector\">*<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">box-sizing<\/span><span class=\"token punctuation\">:<\/span> border-box<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token selector\">body<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">background<\/span><span class=\"token punctuation\">:<\/span> #2554FF <span class=\"token important\">!important<\/span><span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">min-height<\/span><span class=\"token punctuation\">:<\/span> 100vh<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">display<\/span><span class=\"token punctuation\">:<\/span> flex<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">font-weight<\/span><span class=\"token punctuation\">:<\/span> 400<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token selector\">body,\r\nhtml,\r\n.App,\r\n.vue-tempalte,\r\n.vertical-center<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">width<\/span><span class=\"token punctuation\">:<\/span> 100%<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">height<\/span><span class=\"token punctuation\">:<\/span> 100%<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token selector\">.navbar-light<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">background-color<\/span><span class=\"token punctuation\">:<\/span> #ffffff<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">box-shadow<\/span><span class=\"token punctuation\">:<\/span> 0px 14px 80px <span class=\"token function\">rgba<\/span><span class=\"token punctuation\">(<\/span>34<span class=\"token punctuation\">,<\/span> 35<span class=\"token punctuation\">,<\/span> 58<span class=\"token punctuation\">,<\/span> 0.2<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token selector\">.vertical-center<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">display<\/span><span class=\"token punctuation\">:<\/span> flex<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">text-align<\/span><span class=\"token punctuation\">:<\/span> left<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">justify-content<\/span><span class=\"token punctuation\">:<\/span> center<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">flex-direction<\/span><span class=\"token punctuation\">:<\/span> column<span class=\"token punctuation\">;<\/span>    \r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token selector\">.inner-block<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">width<\/span><span class=\"token punctuation\">:<\/span> 450px<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">margin<\/span><span class=\"token punctuation\">:<\/span> auto<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">background<\/span><span class=\"token punctuation\">:<\/span> #ffffff<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">box-shadow<\/span><span class=\"token punctuation\">:<\/span> 0px 14px 80px <span class=\"token function\">rgba<\/span><span class=\"token punctuation\">(<\/span>34<span class=\"token punctuation\">,<\/span> 35<span class=\"token punctuation\">,<\/span> 58<span class=\"token punctuation\">,<\/span> 0.2<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">padding<\/span><span class=\"token punctuation\">:<\/span> 40px 55px 45px 55px<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">border-radius<\/span><span class=\"token punctuation\">:<\/span> 15px<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">transition<\/span><span class=\"token punctuation\">:<\/span> all .3s<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token selector\">.vertical-center .form-control:focus<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">border-color<\/span><span class=\"token punctuation\">:<\/span> #2554FF<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">box-shadow<\/span><span class=\"token punctuation\">:<\/span> none<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token selector\">.vertical-center h3<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">text-align<\/span><span class=\"token punctuation\">:<\/span> center<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">margin<\/span><span class=\"token punctuation\">:<\/span> 0<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">line-height<\/span><span class=\"token punctuation\">:<\/span> 1<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">padding-bottom<\/span><span class=\"token punctuation\">:<\/span> 20px<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token selector\">label<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">font-weight<\/span><span class=\"token punctuation\">:<\/span> 500<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token selector\">.forgot-password,\r\n.forgot-password a<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">text-align<\/span><span class=\"token punctuation\">:<\/span> right<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">font-size<\/span><span class=\"token punctuation\">:<\/span> 13px<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">padding-top<\/span><span class=\"token punctuation\">:<\/span> 10px<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">color<\/span><span class=\"token punctuation\">:<\/span> #7a7a7a<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">margin<\/span><span class=\"token punctuation\">:<\/span> 0<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token selector\">.forgot-password a<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">color<\/span><span class=\"token punctuation\">:<\/span> #2554FF<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token selector\">.social-icons<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">text-align<\/span><span class=\"token punctuation\">:<\/span> center<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">font-family<\/span><span class=\"token punctuation\">:<\/span> <span class=\"token string\">\"Open Sans\"<\/span><span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">font-weight<\/span><span class=\"token punctuation\">:<\/span> 300<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">font-size<\/span><span class=\"token punctuation\">:<\/span> 1.5em<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">color<\/span><span class=\"token punctuation\">:<\/span> #222222<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token selector\">.social-icons ul<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">list-style<\/span><span class=\"token punctuation\">:<\/span> none<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">margin<\/span><span class=\"token punctuation\">:<\/span> 0<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">padding<\/span><span class=\"token punctuation\">:<\/span> 0<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n<span class=\"token selector\">.social-icons ul li<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">display<\/span><span class=\"token punctuation\">:<\/span> inline-block<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">zoom<\/span><span class=\"token punctuation\">:<\/span> 1<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">width<\/span><span class=\"token punctuation\">:<\/span> 65px<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">vertical-align<\/span><span class=\"token punctuation\">:<\/span> middle<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">border<\/span><span class=\"token punctuation\">:<\/span> 1px solid #e3e8f9<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">font-size<\/span><span class=\"token punctuation\">:<\/span> 15px<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">height<\/span><span class=\"token punctuation\">:<\/span> 40px<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">line-height<\/span><span class=\"token punctuation\">:<\/span> 40px<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">margin-right<\/span><span class=\"token punctuation\">:<\/span> 5px<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">background<\/span><span class=\"token punctuation\">:<\/span> #f4f6ff<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token selector\">.social-icons ul li a<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">display<\/span><span class=\"token punctuation\">:<\/span> block<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">font-size<\/span><span class=\"token punctuation\">:<\/span> 1.4em<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">margin<\/span><span class=\"token punctuation\">:<\/span> 0 5px<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">text-decoration<\/span><span class=\"token punctuation\">:<\/span> none<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n<span class=\"token selector\">.social-icons ul li a i<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">-webkit-transition<\/span><span class=\"token punctuation\">:<\/span> all 0.2s ease-in<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">-moz-transition<\/span><span class=\"token punctuation\">:<\/span> all 0.2s ease-in<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">-o-transition<\/span><span class=\"token punctuation\">:<\/span> all 0.2s ease-in<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">-ms-transition<\/span><span class=\"token punctuation\">:<\/span> all 0.2s ease-in<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">transition<\/span><span class=\"token punctuation\">:<\/span> all 0.2s ease-in<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token selector\">.social-icons ul li a:focus i,\r\n.social-icons ul li a:active i<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token property\">transition<\/span><span class=\"token punctuation\">:<\/span> none<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token property\">color<\/span><span class=\"token punctuation\">:<\/span> #222222<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span><\/code><\/pre>\n<\/div>\n<div id=\"tc_9706_05\" class=\"LinkedBlock\">\n<h2>Create User Login UI in Vue<\/h2>\n<p>Designing and developing a login screen a bit time consuming task and requires some additional skills for a software developer. As we know, the login component allows you to access an application. It contains some strong web development fundamentals such as creating HTML forms, routing to navigate to some other screen, and two-way data-binding to extract the data from the login form.<\/p>\n<p>We\u2019re going to learn how to build a beautiful login form in the Vue.js application.<\/p>\n<p>Create a Login.vue file in components folder and add the following code inside the\u00a0<strong>components\/Login.vue<\/strong>\u00a0file.<\/p>\n<pre class=\" language-markup\"><code class=\" language-markup\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>template<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n    <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>div <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>vue-tempalte<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n        <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>form<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>h3<span class=\"token punctuation\">&gt;<\/span><\/span>Sign In<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>h3<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>div <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>form-group<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>label<span class=\"token punctuation\">&gt;<\/span><\/span>Email address<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>label<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>input <span class=\"token attr-name\">type<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>email<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>form-control form-control-lg<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token punctuation\">\/&gt;<\/span><\/span>\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>div<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>div <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>form-group<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>label<span class=\"token punctuation\">&gt;<\/span><\/span>Password<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>label<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>input <span class=\"token attr-name\">type<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>password<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>form-control form-control-lg<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token punctuation\">\/&gt;<\/span><\/span>\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>div<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>button <span class=\"token attr-name\">type<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>submit<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>btn btn-dark btn-lg btn-block<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>Sign In<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>button<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>p <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>forgot-password text-right mt-2 mb-4<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>router-link <span class=\"token attr-name\">to<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>\/forgot-password<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>Forgot password ?<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>router-link<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>p<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>div <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>social-icons<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>ul<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                    <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>li<span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>a <span class=\"token attr-name\">href<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>#<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>i <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>fa fa-google<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>i<span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>a<span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>li<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                    <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>li<span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>a <span class=\"token attr-name\">href<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>#<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>i <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>fa fa-facebook<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>i<span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>a<span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>li<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                    <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>li<span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>a <span class=\"token attr-name\">href<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>#<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>i <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>fa fa-twitter<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>i<span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>a<span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>li<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>ul<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>div<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n        <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>form<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n    <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>div<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>template<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n<span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>script<span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token script\"><span class=\"token language-javascript\">\r\n    <span class=\"token keyword\">export<\/span> <span class=\"token keyword\">default<\/span> <span class=\"token punctuation\">{<\/span>\r\n        <span class=\"token function\">data<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n            <span class=\"token keyword\">return<\/span> <span class=\"token punctuation\">{<\/span><span class=\"token punctuation\">}<\/span>\r\n        <span class=\"token punctuation\">}<\/span>\r\n    <span class=\"token punctuation\">}<\/span>\r\n<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>script<span class=\"token punctuation\">&gt;<\/span><\/span><\/code><\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9734\" src=\"https:\/\/www.positronx.io\/wp-content\/uploads\/2020\/04\/vue-login-9706-02.png\" sizes=\"auto, (max-width: 1738px) 100vw, 1738px\" srcset=\"https:\/\/www.positronx.io\/wp-content\/uploads\/2020\/04\/vue-login-9706-02.png 1738w, https:\/\/www.positronx.io\/wp-content\/uploads\/2020\/04\/vue-login-9706-02-768x521.png 768w, https:\/\/www.positronx.io\/wp-content\/uploads\/2020\/04\/vue-login-9706-02-1536x1041.png 1536w, https:\/\/www.positronx.io\/wp-content\/uploads\/2020\/04\/vue-login-9706-02-302x205.png 302w\" alt=\"Create User Login UI in Vue\" width=\"1738\" height=\"1178\" \/><\/p>\n<\/div>\n<div id=\"tc_9706_06\" class=\"LinkedBlock\">\n<h2>Build Sign up Template<\/h2>\n<p>Well, sign up in simple terms means to create a new account or register in an application. It could be signing up for any web portal or even for a newsletter. When you visit any new website, you need to create an account using the name, email, and password.<\/p>\n<p>In this step, we are going to create an eye-catching registration UI screen in Vue using the Bootstrap 4 Form component.<\/p>\n<p>Create\u00a0<strong>components\/Signup.vue<\/strong>\u00a0and paste the given below code inside the file.<\/p>\n<pre class=\" language-markup\"><code class=\"  language-markup\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>template<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n    <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>div <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>vue-tempalte<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n        <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>form<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>h3<span class=\"token punctuation\">&gt;<\/span><\/span>Sign Up<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>h3<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>div <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>form-group<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>label<span class=\"token punctuation\">&gt;<\/span><\/span>Full Name<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>label<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>input <span class=\"token attr-name\">type<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>text<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>form-control form-control-lg<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">\/&gt;<\/span><\/span>\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>div<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>div <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>form-group<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>label<span class=\"token punctuation\">&gt;<\/span><\/span>Email address<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>label<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>input <span class=\"token attr-name\">type<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>email<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>form-control form-control-lg<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token punctuation\">\/&gt;<\/span><\/span>\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>div<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>div <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>form-group<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>label<span class=\"token punctuation\">&gt;<\/span><\/span>Password<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>label<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>input <span class=\"token attr-name\">type<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>password<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>form-control form-control-lg<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token punctuation\">\/&gt;<\/span><\/span>\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>div<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>button <span class=\"token attr-name\">type<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>submit<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>btn btn-dark btn-lg btn-block<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>Sign Up<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>button<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>p <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>forgot-password text-right<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                Already registered \r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>router-link <span class=\"token attr-name\">:to<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>{name: 'login'}<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>sign in?<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>router-link<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>p<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n        <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>form<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n    <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>div<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>template<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n<span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>script<span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token script\"><span class=\"token language-javascript\">\r\n    <span class=\"token keyword\">export<\/span> <span class=\"token keyword\">default<\/span> <span class=\"token punctuation\">{<\/span>\r\n        <span class=\"token function\">data<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n            <span class=\"token keyword\">return<\/span> <span class=\"token punctuation\">{<\/span><span class=\"token punctuation\">}<\/span>\r\n        <span class=\"token punctuation\">}<\/span>\r\n    <span class=\"token punctuation\">}<\/span>\r\n<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>script<span class=\"token punctuation\">&gt;<\/span><\/span><\/code><\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9737\" src=\"https:\/\/www.positronx.io\/wp-content\/uploads\/2020\/04\/vue-signup-9706-003.png\" sizes=\"auto, (max-width: 1338px) 100vw, 1338px\" srcset=\"https:\/\/www.positronx.io\/wp-content\/uploads\/2020\/04\/vue-signup-9706-003.png 1338w, https:\/\/www.positronx.io\/wp-content\/uploads\/2020\/04\/vue-signup-9706-003-768x653.png 768w, https:\/\/www.positronx.io\/wp-content\/uploads\/2020\/04\/vue-signup-9706-003-247x210.png 247w\" alt=\"Build Vue Sign up Template\" width=\"1338\" height=\"1138\" \/><\/p>\n<\/div>\n<div id=\"tc_9706_07\" class=\"LinkedBlock\">\n<h2>Forgot Password Screen in Vue<\/h2>\n<p>\u201cForgot password\u201d screen is used to recover any password that you forgot for any specific account for the application.<\/p>\n<p>Create\u00a0<strong>components\/ForgotPassword.vue<\/strong>\u00a0and paste the given below code inside the file.<\/p>\n<pre class=\" language-markup\"><code class=\"  language-markup\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>template<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n    <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>div <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>vue-tempalte<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n        <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>form<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>h3<span class=\"token punctuation\">&gt;<\/span><\/span>Forgot Password<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>h3<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>div <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>form-group<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>label<span class=\"token punctuation\">&gt;<\/span><\/span>Email address<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>label<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n                <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>input <span class=\"token attr-name\">type<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>email<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>form-control form-control-lg<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token punctuation\">\/&gt;<\/span><\/span>\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>div<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>button <span class=\"token attr-name\">type<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>submit<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>btn btn-dark btn-lg btn-block<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>Reset password<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>button<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n        <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>form<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n    <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>div<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>template<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n<span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>script<span class=\"token punctuation\">&gt;<\/span><\/span><span class=\"token script\"><span class=\"token language-javascript\">\r\n    <span class=\"token keyword\">export<\/span> <span class=\"token keyword\">default<\/span> <span class=\"token punctuation\">{<\/span>\r\n        <span class=\"token function\">data<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n            <span class=\"token keyword\">return<\/span> <span class=\"token punctuation\">{<\/span><span class=\"token punctuation\">}<\/span>\r\n        <span class=\"token punctuation\">}<\/span>\r\n    <span class=\"token punctuation\">}<\/span>\r\n<\/span><\/span><span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>script<span class=\"token punctuation\">&gt;<\/span><\/span><\/code><\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-9733\" src=\"https:\/\/www.positronx.io\/wp-content\/uploads\/2020\/04\/vue-forgot-password-9706-01.png\" sizes=\"auto, (max-width: 1714px) 100vw, 1714px\" srcset=\"https:\/\/www.positronx.io\/wp-content\/uploads\/2020\/04\/vue-forgot-password-9706-01.png 1714w, https:\/\/www.positronx.io\/wp-content\/uploads\/2020\/04\/vue-forgot-password-9706-01-768x509.png 768w, https:\/\/www.positronx.io\/wp-content\/uploads\/2020\/04\/vue-forgot-password-9706-01-1536x1018.png 1536w, https:\/\/www.positronx.io\/wp-content\/uploads\/2020\/04\/vue-forgot-password-9706-01-302x200.png 302w\" alt=\"Forgot password in Vue\" width=\"1714\" height=\"1136\" \/><\/p>\n<\/div>\n<div id=\"tc_9706_08\" class=\"LinkedBlock\">\n<h2>Enable Vue Router<\/h2>\n<p>Next, we enable the router in the vue app, these routes will allow us to navigate from one page to another page. So, first install the vue router package in the app.<\/p>\n<pre class=\"  language-bash\" tabindex=\"0\"><code class=\"  language-bash\"><span class=\"token function\">npm<\/span> <span class=\"token function\">install<\/span> vue-router<\/code><\/pre>\n<p>Add the following code inside the\u00a0<strong>router\/index.js<\/strong>\u00a0file.<\/p>\n<pre class=\" language-markup\"><code class=\" language-javascript\"><span class=\"token keyword\">import<\/span> Vue <span class=\"token keyword\">from<\/span> <span class=\"token string\">'vue'<\/span>\r\n<span class=\"token keyword\">import<\/span> VueRouter <span class=\"token keyword\">from<\/span> <span class=\"token string\">'vue-router'<\/span>\r\n\r\nVue<span class=\"token punctuation\">.<\/span><span class=\"token function\">use<\/span><span class=\"token punctuation\">(<\/span>VueRouter<span class=\"token punctuation\">)<\/span>\r\n\r\n  <span class=\"token keyword\">const<\/span> routes <span class=\"token operator\">=<\/span> <span class=\"token punctuation\">[<\/span>\r\n  <span class=\"token punctuation\">{<\/span>\r\n    path<span class=\"token operator\">:<\/span> <span class=\"token string\">'\/'<\/span><span class=\"token punctuation\">,<\/span>\r\n    name<span class=\"token operator\">:<\/span> <span class=\"token string\">'signup'<\/span><span class=\"token punctuation\">,<\/span>\r\n    <span class=\"token function-variable function\">component<\/span><span class=\"token operator\">:<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">=&gt;<\/span> <span class=\"token keyword\">import<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">'..\/components\/Signup.vue'<\/span><span class=\"token punctuation\">)<\/span>\r\n  <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">,<\/span>\r\n  <span class=\"token punctuation\">{<\/span>\r\n    path<span class=\"token operator\">:<\/span> <span class=\"token string\">'\/login'<\/span><span class=\"token punctuation\">,<\/span>\r\n    name<span class=\"token operator\">:<\/span> <span class=\"token string\">'login'<\/span><span class=\"token punctuation\">,<\/span>\r\n    <span class=\"token function-variable function\">component<\/span><span class=\"token operator\">:<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">=&gt;<\/span> <span class=\"token keyword\">import<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">'..\/components\/Login.vue'<\/span><span class=\"token punctuation\">)<\/span>\r\n  <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">,<\/span>\r\n  <span class=\"token punctuation\">{<\/span>\r\n    path<span class=\"token operator\">:<\/span> <span class=\"token string\">'\/forgot-password'<\/span><span class=\"token punctuation\">,<\/span>\r\n    name<span class=\"token operator\">:<\/span> <span class=\"token string\">'forgot-password'<\/span><span class=\"token punctuation\">,<\/span>\r\n    <span class=\"token function-variable function\">component<\/span><span class=\"token operator\">:<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">=&gt;<\/span> <span class=\"token keyword\">import<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">'..\/components\/ForgotPassword.vue'<\/span><span class=\"token punctuation\">)<\/span>\r\n  <span class=\"token punctuation\">}<\/span>\r\n<span class=\"token punctuation\">]<\/span>\r\n\r\n<span class=\"token keyword\">const<\/span> router <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">VueRouter<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">{<\/span>\r\n  mode<span class=\"token operator\">:<\/span> <span class=\"token string\">'history'<\/span><span class=\"token punctuation\">,<\/span>\r\n  base<span class=\"token operator\">:<\/span> process<span class=\"token punctuation\">.<\/span>env<span class=\"token punctuation\">.<\/span><span class=\"token constant\">BASE_URL<\/span><span class=\"token punctuation\">,<\/span>\r\n  routes\r\n<span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span>\r\n\r\n<span class=\"token keyword\">export<\/span> <span class=\"token keyword\">default<\/span> router\r\n<\/code><\/pre>\n<\/div>\n<div id=\"tc_9706_09\" class=\"LinkedBlock\">\n<h2>Implement Vue Navigation with Bootstrap 4<\/h2>\n<p>Finally, we will create the simple and beautiful navigation bar that will allow us jump from one template to another template in Vue app.<\/p>\n<p>Include the given below code inside the\u00a0<strong>App.vue<\/strong>\u00a0file.<\/p>\n<pre class=\" language-markup\"><code class=\" language-markup\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>template<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n  <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>div <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>vue-tempalte<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n    <span class=\"token comment\">&lt;!-- Navigation --&gt;<\/span>\r\n    <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>nav <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>navbar shadow bg-white rounded justify-content-between flex-nowrap flex-row fixed-top<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n      <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>div <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>container<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n        <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>a <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>navbar-brand float-left<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token attr-name\">href<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>https:\/\/www.positronx.io<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token attr-name\">target<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>_blank<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n           positronX.io\r\n        <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>a<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n        <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>ul <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>nav navbar-nav flex-row float-right<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n          <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>li <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>nav-item<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>router-link <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>nav-link pr-3<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token attr-name\">to<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>\/login<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>Sign in<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>router-link<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n          <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>li<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n          <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>li <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>nav-item<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n            <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>router-link <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>btn btn-outline-primary<span class=\"token punctuation\">\"<\/span><\/span> <span class=\"token attr-name\">to<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>\/<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>Sign up<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>router-link<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n          <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>li<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n        <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>ul<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n      <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>div<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n    <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>nav<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n\r\n    <span class=\"token comment\">&lt;!-- Main --&gt;<\/span>\r\n    <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>div <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>App<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n      <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>div <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>vertical-center<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n        <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>div <span class=\"token attr-name\">class<\/span><span class=\"token attr-value\"><span class=\"token punctuation\">=<\/span><span class=\"token punctuation\">\"<\/span>inner-block<span class=\"token punctuation\">\"<\/span><\/span><span class=\"token punctuation\">&gt;<\/span><\/span>\r\n          <span class=\"token tag\"><span class=\"token punctuation\">&lt;<\/span>router-view <span class=\"token punctuation\">\/&gt;<\/span><\/span>\r\n        <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>div<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n      <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>div<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n    <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>div<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n  <span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>div<span class=\"token punctuation\">&gt;<\/span><\/span>\r\n<span class=\"token tag\"><span class=\"token punctuation\">&lt;\/<\/span>template<span class=\"token punctuation\">&gt;<\/span><\/span><\/code><\/pre>\n<\/div>\n<div id=\"tc_9706_10\" class=\"LinkedBlock\">\n<h2>Summary<\/h2>\n<p>We just created beautiful UI screes for Vue authentication process, we explored how to create some beautiful Login, Signup and Forgot password templates with Bootstrap 4.<\/p>\n<p>You can download the full code from this\u00a0<a href=\"https:\/\/github.com\/SinghDigamber\/vue-login-signup-ui\" target=\"_blank\" rel=\"noopener noreferrer\">GitHub repository<\/a>.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>In this tutorial, we are going to create responsive Login &amp; Signup UI screens using the Bootstrap 4 CSS framework in the Vue.js application. We will create a Login screen, Sign up screen, and Forgot Password screen from scratch. Bootstrap\u00a0is a free and open-source CSS based UI framework, and It is used for rapid front-end &hellip; <a href=\"https:\/\/www.strongd.net\/?p=1595\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Create Login Signup UI Screens in Vue with Bootstrap 4<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[31,247],"tags":[],"class_list":["post-1595","post","type-post","status-publish","format-standard","hentry","category-javascript","category-vue"],"_links":{"self":[{"href":"https:\/\/www.strongd.net\/index.php?rest_route=\/wp\/v2\/posts\/1595","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.strongd.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.strongd.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.strongd.net\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.strongd.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1595"}],"version-history":[{"count":1,"href":"https:\/\/www.strongd.net\/index.php?rest_route=\/wp\/v2\/posts\/1595\/revisions"}],"predecessor-version":[{"id":1596,"href":"https:\/\/www.strongd.net\/index.php?rest_route=\/wp\/v2\/posts\/1595\/revisions\/1596"}],"wp:attachment":[{"href":"https:\/\/www.strongd.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1595"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.strongd.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1595"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.strongd.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1595"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}