تفاصيل العمل

SmackChat – Real-Time Vue.js Chat App

SmackChat is a sleek and responsive real-time chat application built with Vue.js and Firebase. It provides a smooth messaging experience between registered users, with support for light/dark mode, live status updates, and a dynamic user interface.

Technologies Used

Vue.js (Composition API)

Firebase Authentication

Firebase Realtime Database

HTML5 & CSS3

Font Awesome Icons

---

Features

Authentication

Firebase-powered user sign-up and sign-in.

Persistent login sessions with auto-redirect.

Friendly error handling for incorrect credentials.

Real-Time Chat

Instant message sending and receiving using Firebase Realtime Database.

Automatically scrolls to the newest messages.

Typing indicators (if implemented).

Display timestamps on each message.

??? Contacts & Conversations

Dynamic contacts list fetched from Firebase.

New conversations are added automatically when users start chatting.

Unread message indicator: Users see when a conversation has new messages they haven’t opened yet.

Light/Dark Mode Toggle

Beautiful dark mode/light mode switch with animated icons (sun/moon).

Theme preference is remembered across sessions.

Responsive Design

Fully responsive and mobile-friendly UI.

Clean layout optimized for both desktop and smartphone users.

? Navigation Control

Certain pages (like the chat screen) are protected from direct URL access unless the user is authenticated or has a valid access code.

️ Additional Features

Animated user dropdown menu (profile, settings, logout).

Custom status messages (e.g., "user is typing...") (optional).

Firebase data is optimized using onDisconnect and smart listeners.

---

Folder Structure Highlights

components/ – Reusable Vue components (chat box, user list, toggles, etc.)

views/ – Main route views like Login, Register, Chat, Contacts

firebase/ – Firebase setup and configuration

store/ – Vuex or custom reactive state handling for user/session data (if used)

---

Hosting

Hosted on Netlify using GitHub deployment.

Codebase is private due to sensitive Firebase API keys, but front-end is publicly accessible.

Demo:

https://smackchatapp.netl...

بطاقة العمل

اسم المستقل
عدد الإعجابات
0
عدد المشاهدات
6
تاريخ الإضافة
تاريخ الإنجاز
المهارات