Demo Here: Vue-Fire-Tail
Try Logging with the following
Email Address: test@gmail.com
Password: test@12345
At times it get very irritating when you want to start your new project which is a firebase project in which you have to set Authentication Flow EVERYTIME. You have to add Routes, Protect your routes, create a Login & Register component, Style those component and have a nice Loading animation, Validate your login/register form. and much much more.
Here is Vue-Fire-Tail Boiler plate for you😊. Vue-Fire-Tail is powered by next-gen technologies like Vue 3 and Firebase 9 along with the power of Vite and Tailwind CSS v3.
- Email Password Authetication & Google Authetication
- Forgot Password Feature
- Login & SignUp forms validations
- Fallback Page (404 Page), Loaders and page transitions for smooth user experience
- Font Awesome Icons pre configured.
git clone https://github.com/sushil-kamble/vue-tail-fire.git my-project
yarnMake sure you replace my-project with your own project name
If you don't have yarn installed
npm iRemove yarn.lock as you will already have package.lock
- Go to Firebase console. Add Project. In project overview, click on the web icon and register the app. You will see
firebaseConfig object, We will require its details further. Click on Authetication, then on set up sign-in method. EnableEmail/password authentication&google authentication. - Create a
.env.localfile in your project's root. Example of.env.localfile is given below. Make sure you replaceYOUR_FIREBASE_CONSOLE_DETAILSwith yourfirebaseConfig objectdetails.
VITE_APP_API_KEY=YOUR_FIREBASE_CONSOLE_DETAILS
VITE_APP_AUTH_DOMAIN=YOUR_FIREBASE_CONSOLE_DETAILS
VITE_APP_DATABASE_URL=YOUR_FIREBASE_CONSOLE_DETAILS
VITE_APP_PROJECT_ID=YOUR_FIREBASE_CONSOLE_DETAILS
VITE_APP_STORAGE_BUCKET=YOUR_FIREBASE_CONSOLE_DETAILS
VITE_APP_MESSAGING_SENDER_ID=YOUR_FIREBASE_CONSOLE_DETAILS
VITE_APP_APP_ID=YOUR_FIREBASE_CONSOLE_DETAILS
- That's It ! Finally run the application
yarn dev # OR npm run dev
- Home Page
- Login Page
- Sign Up Page
- Forgot Password Page
- 404 Page
- Profile Page -
Auth Required - Database Page -
Auth Required
- Class suffixed with
t-will be found/src/assets/index.css, they are basically global stylesSome basic html elements and classes are already configured check out,
/src/assets/index.css useAuthStatein/src/firebase.jsreturns{ user, error, isAuthenticated }useSignOutin/src/firebase.js- Signs Out UsergetUserStatein/src/firebase.js- Returns promiseisValidEmail/src/helpers/index.jsfunction returns true if email is validLoadingin/src/components/Loading.vue- Loading spinnerDialogin/src/components/Dialog.vue- Headless UI dialog
- Font -
Ubuntu (font-text)&Goldman (font-heading) - Primary Color - Tailwind -
colors.sky["500"] - Secondary Color - Tailwind -
colors.slate["700"] - Background Color - Tailwind -
.bg-secondary/90 - Error Color - Tailwind -
colors.red["500"]