This is a realtime chat application built on top of Laravel and Chatify. The application allows users to send and receive messages in real-time, with features such as message attachments, seen status, and user authentication, light and dark themes, all within a simple and intuitive interface.
- Realtime messaging using Laravel Echo and Pusher
- User authentication and authorization
- Real-time contact list updates.
- Favorite users system (Like stories style).
- Saved Messages to save your messages online like Telegram messenger app.
- Search functionality.
- Contact item's last message indicator (e.g. You: ....).
- Real-time user's active status.
- Real-time typing indicator.
- Real-time message seen indicator.
- Real-time internet connection status.
- Upload attachments (Photo/File).
- Send Emoji's.
- User details panel (Shared photos, delete conversation..).
- Responsive design with all devices.
- User settings and chat customization : user's profile photo, dark mode and chat color. with simple and wonderful UI design.
- PHP >= 8.0
- Composer
- Node.js and npm
- MySQL or compatible database
- Pusher account for real-time communication
git clone https://github.com/ibrahim11elian/Realtime-Chat-App-Chatify.git
cd Realtime-Chat-App-Chatify
Install the PHP dependencies:
composer install
Install the Node.js dependencies:
npm install
Copy the .env.example
file to .env
:
cp .env.example .env
php artisan key:generate
-
Create database and modify
.env
with your DB name and Pusher credentials. -
Run the following command to create the database tables:
php artisan migrate
Create a symbolic link from public/storage
to storage/app/public
:
php artisan storage:link
Compile the CSS and JavaScript assets:
npm run dev
or
npm run production
php artisan serve
The application will be accessible at http://127.0.0.1:8000
.
For production, ensure you set APP_ENV=production
and APP_URL
to the correct HTTPS URL. in your .env
file and use the following build command:
composer install --no-dev --optimize-autoloader
php artisan migrate --force
php artisan storage:link
php artisan view:clear
npm install
npm run build
You can view the live instance of the application at This link You just need to create an account, and have fun 😀.