A real-time chat application built with Django, HTMX, and WebSockets, supporting public and private chatrooms with file sharing capabilities. 📩
✅ User Authentication (Login, Registration, Email Verification) ✅ Real-Time Messaging with WebSockets ✅ Public & Private Chatrooms ✅ File Upload Support (Images, Documents) ✅ HTMX for Smooth UX ✅ Admin Dashboard for Chatroom Management ✅ Secure with CSRF & Authentication Middleware
$ git clone https://github.com/mehdidinari/chat-app.git
$ cd chat-app$ python -m venv venv
$ source venv/bin/activate # On Windows: venv\Scripts\activate$ pip install -r requirements.txt$ python manage.py makemigrations
$ python manage.py migrate$ python manage.py createsuperuser$ python manage.py runserver🔗 Visit: http://127.0.0.1:8000/
- Django 5.1.6 (Backend)
- HTMX (Lightweight frontend interactivity)
- Channels (WebSockets for real-time communication)
- SQLite / PostgreSQL (Database support)
- Bootstrap / Tailwind CSS (Styling)
- Login/Register to access the chatrooms.
- Create a new public or private chatroom.
- Start real-time conversations.
- Upload images and documents directly in the chat.
- Shared files appear within the chat conversation.
- Manage chatrooms & users:
http://127.0.0.1:8000/admin/
Want to contribute? Follow these steps:
- Fork the repository 🚀
- Create a new branch:
git checkout -b feature-branch - Make your changes & commit:
git commit -m 'Added a new feature' - Push to your fork:
git push origin feature-branch - Open a Pull Request 🎉
This project is licensed under the MIT License. Feel free to modify and use it.
🔹 GitHub: @yourusername
🔹 LinkedIn: Your LinkedIn