Flowzi is a real-time private messaging platform built with Django, Django Channels, WebSocket, and JWT Authentication. This project is currently under active development and aims to be a fast, secure, and scalable communication system for users who value privacy, freedom, and seamless connectivity.
- π Secure private chat between users
- π¬ Real-time messaging with WebSockets
- π§ͺ JWT-based authentication (no session handling)
- π RESTful APIs built with Django REST Framework
- π Modular, scalable backend architecture
- π‘ Custom user model for flexibility and privacy
- Backend: Django + Django Channels
- Real-Time: WebSocket, Redis
- Auth: JWT (djangorestframework-simplejwt)
- Database: PostgreSQL / SQLite (dev)
- Frontend: Not implemented yet (API ready)
- Deployment: Docker (WIP)
flowzi/
βββ accounts/ # User models and authentication
βββ link/ # Chat logic and WebSocket consumers
βββ core/ # Project configuration
βββ media/ # Uploaded files (if any)
Using Django Channels and Redis, each user can establish a WebSocket connection to communicate in real-time. The system uses AsyncWebsocketConsumer to handle message broadcasting and saving them to the database.
Authentication is handled using JSON Web Tokens (JWT) which ensures stateless, scalable authentication. We're using djangorestframework-simplejwt.
Flowzi is currently in the development phase. We're actively building features like:
- User profile customization
- Read receipts
- Typing indicators
- File sharing in chat
Made with β and a love for backend engineering.