This Vue.js code provides a simple and customizable login form that can be easily integrated into any web application. It offers a clean and user-friendly interface for users to sign in using their email address or social media accounts.
The login form consists of the following features:
1. Setting Up the Template
<template>
<div class="bg-white h-screen flex items-center justify-center">
<div class="max-w-sm w-full">
<!-- Login form content goes here -->
</div>
</div>
</template>
This template defines the basic structure of the login form. It includes a white background, centered content, and a maximum width for the form container.
2. Adding the Sign-In Buttons
<div class="flex items-center justify-between">
<button class="w-full max-w-xs font-bold shadow-sm rounded-lg py-3 bg-indigo-100 text-gray-800 flex items-center justify-center">
<svg class="w-5 h-5 mr-2" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
<path d="M6 10a2 2 0 10-4 0 2 2 0 004 0zM12 10a2 2 0 10-4 0 2 2 0 004 0zM16 10a2 2 0 10-4 0 2 2 0 004 0z"></path>
</svg>
Get's started with Facebook
</button>
</div>
This code creates a button for signing in with Facebook. The button has a blue background, white text, and an SVG icon.
3. Implementing the Email Sign-In
<div class="flex items-center justify-between mt-4">
<button class="w-full max-w-xs font-bold shadow-sm rounded-lg py-3 border border-gray-400 flex items-center justify-center">
<svg class="w-5 h-5 mr-2" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" d="..." clip-rule="evenodd"></path>
</svg>
Get's started with Email
</button>
</div>
This code creates a button for signing in with email. It has a gray border, white text, and an SVG icon.
4. Adding Input Fields for Email and Password
<div class="mt-6">
<div class="mb-4">
<input type="email" class="w-full px-4 py-2 border rounded-lg focus:outline-none focus:ring-2 focus:ring-indigo-200" placeholder="Email">
</div>
<div class="mb-4">
<input type="password" class="w-full px-4 py-2 border rounded-lg focus:outline-none focus:ring-2 focus:ring-indigo-200" placeholder="Password">
</div>
</div>
These input fields allow users to enter their email address and password when signing in with the email option.
5. Handling Form Submission
const login = () => {
console.log('login')
}
This function is called when the login button is clicked. It currently logs a message to the console, but can be modified to handle actual user authentication.
Development Experience and Learnings:
Future Extensions and Optimizations: