/django-private-chat

Chat application dependent on Vue and Django - Its built on concepts of JWT Authentication, Websockets, Django Channels, Pinnia , DRF etc.

Primary LanguageJavaScript

Private Chat Application

The project, is focused on a real time chat app utilizing vue library and Django backend. The api was heavily dependent on Django restframework.

Screenshot from 2024-07-12 06-04-31

Testing

Unitests have also been imlemented on every app (apis), to ensure quality code. Coverage has also been used to monitor the quality of tests based on it's report

Django Channels

It referes to a third part module that extends its abilities beyond HTTP - to handle WebSockets, chat protocols, IoT protocols, and more. It provides a way to handle real-time, bi-directional communication between the server and client, making it ideal for building applications such as chat rooms, real-time dashboards, and online games.

Django Channels is built on top of the popular asyncio library, which is part of Python's standard library, and it uses the WebSockets protocol to enable real-time communication between the client and server. It also supports other protocols such as HTTP long-polling, Server-Sent Events (SSE), and more.

Some of the key features of Django Channels include:

  1. Asynchronous handling of requests
  2. WebSockets support
  3. Custom protocol support
  4. Django integration

Run Application

  1. git clone 'this repo's link'
  2. make build
  3. make up
  4. make makemigrations
  5. make migrate
  6. Access on 0.0.0.0:8080