Djangologue is a real-time chat application built with Django, utilizing Django Rest Framework for RESTful APIs, Django Channels for handling WebSockets, and Daphne as the ASGI server.
- Real-time messaging: Engage in instant messaging with other users using WebSockets for real-time communication.
- User authentication and room permission checks: Securely login to access the chat application and join only the rooms you have permission to access, ensuring privacy and security.
- Message storage and retrieval: All messages are stored in the database and can be retrieved via a RESTful API endpoint.
- RabbitMQ integration: Utilizes RabbitMQ for sending emails asynchronously.
- Python 3.x
- Django
- Django Rest Framework
- Django Channels
- Daphne
- RabbitMQ
- Clone the repository:
git clone git@github.com:aminamerian/djangologue.git
- Install dependencies:
cd djangologue
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
- Apply migrations:
python manage.py migrate
- Run the development server:
python manage.py runserver
- Run RabbitMQ consumer for email sending:
python manage.py consume_rabbitmq
- Access the application at http://localhost:8000/.
Contributions are welcome! Please feel free to open issues or submit pull requests.