Lume is a real-time group chat application built with Django, WebSockets, HTMX, and AWS. It allows users to create unique chat groups, send messages instantly, and manage group memberships with permissions.
This project was initially built by following a tutorial by Andreas Jud, with additional custom features added by me.
- Real-time messaging with WebSockets
- Create & join chat groups with unique short UIDs
- Ban/Unban users from groups
- Notification system
- Secure user authentication and authorization
- Media & file sharing (Images, Videos, Docs)
- Modern HTMX-based UI for seamless interactions
- Deployed on Render (Amazon S3 for media, Whitenoise for static files)
- Backend: Django, Django Channels
- Frontend: HTMX, Tailwind CSS
- Database: PostgreSQL / SQLite (dev)
- WebSockets: Django Channels, Redis
- Storage & Deployment: AWS (S3 buckets), Whitenoise, Render(For Deployment)

The public chat

Notifications feature

Edit profile

Create chat feature

Created chat
git clone https://github.com/adn26/Lume-TheChatApp.git
cd Lume
pip install -r requirements.txt
Create a .env file and add the following:
ENVIRONMENT = development # use production when configuring env variables on deployment
SECRET_KEY=your-secret-key
DEBUG=True
DATABASE_URL=your-database-url
REDIS_URL=your-redis-url
AWS_ACCESS_KEY=your-key
AWS_SECRET_KEY=your-key
python manage.py migrate
python manage.py runserver
Go to http://localhost:8000
- ✅ Ban/Unban logic – Group admins can ban/unban users
- ✅ Notification logic – Users receive notifications for new messages
- ✅ Improved UI/UX – Added animations, improved layout
- ✅ Voice messaging
- ✅ Push notifications
- ✅ Dark mode
- ✅ AI-powered chat suggestions
- Based on a tutorial by Andreas Jud
- Custom features and enhancements by Adnan(me)
- Licensed under MIT License – use it freely!
Feel free to submit PRs or open issues! 🚀