https://github.com/saeedmasoudie/pycomms
PyComms is a real-time communication platform built with Django Channels and WebRTC. It offers features like voice communication, text chat, and scalable real-time interactions for users.
https://github.com/saeedmasoudie/pycomms
bootstrap chat django django-realtime-chat djangoapp djangorealtimechatapp js pycomms real-time voice webrtc
Last synced: 2 months ago
JSON representation
PyComms is a real-time communication platform built with Django Channels and WebRTC. It offers features like voice communication, text chat, and scalable real-time interactions for users.
- Host: GitHub
- URL: https://github.com/saeedmasoudie/pycomms
- Owner: saeedmasoudie
- License: mit
- Created: 2025-03-20T15:22:54.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2025-03-20T16:17:01.000Z (2 months ago)
- Last Synced: 2025-03-20T16:36:35.234Z (2 months ago)
- Topics: bootstrap, chat, django, django-realtime-chat, djangoapp, djangorealtimechatapp, js, pycomms, real-time, voice, webrtc
- Language: JavaScript
- Homepage:
- Size: 34.7 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# PyComms
### **Overview**
**PyComms** is a scalable real-time communication platform built with Django Channels and WebRTC. The application enables users to engage in real-time voice and text interactions, offering rich features like team collaboration, direct communication, and user management.Whether you're creating teams, managing channels, or diving into a multi-voice session within a single channel, PyComms is designed to facilitate seamless communication experiences with user-friendly features and backend efficiency.
---
### **Features**
#### **Completed Functionalities**
- **User Authentication:**
- Signup and Signin.
- Profile settings for personalized user experiences.- **Channels:**
- Create and manage channels.
- Support for multiple simultaneous voice sessions in a single channel.
- Channels-based chats (real-time).- **Real-Time Communication:**
- WebRTC-powered voice communication.
- Backend powered by Django Channels.
- Rate-limiting features to handle spam.#### **In-Progress Functionalities**
- **Teams and Collaboration:**
- Create and manage teams.
- Assign and modify team roles.- **Friends Management:**
- Add friends.
- View friend list.
- Direct calls and chats with friends.- **User Interaction:**
- Search for users.
- Manage user accounts.- **Channel Ranks:**
- Role management within channels, including Owner, Admin, and Member functionalities.---
### **Tech Stack**
- **Backend:** Django with Django Channels for real-time communication.
- **Frontend:** Bootstrap for responsive UI and JavaScript for interactivity.
- **Real-Time Features:** WebRTC for voice communication and Redis for Django Channels layers.
- **Database:** PostgreSQL (or any database of your choice).---
### **Installation**
```bash
# Clone the repository or download it from Zip
git clone https://github.com/saeedmasoudie/pycomms.git# Navigate to the project directory
cd pycomms# Create a virtual environment
python -m venv venv# Activate the virtual environment
source venv/bin/activate # Unix/Linux
venv\Scripts\activate # Windows# Install dependencies
pip install -r requirements.txt# Run migrations
python manage.py migrate# Start the development server
python manage.py runserver
```### **Usage**
1. Setup your Database (Recomended -> PostgreSQL) - dont use SQLite
2. Change Setting File in Project
3. Navigate to http://localhost:8000.
4. Sign up or log in.
5. Explore the available functionalities, such as creating channels or chatting in real time.
6. Work with channels, chats, and multi-voice sessions.### **Contributing**
This project is a work in progress, and contributions are welcome! If you'd like to collaborate:
- Fork the repository.
- Create a feature branch (git checkout -b feature-name).
- Commit your changes (git commit -m "Add feature-name").
- Push your branch and create a pull request.### **Current Status**
PyComms is under active development. While several core features are functional, others are still being implemented. Feel free to explore and contribute!### **Contact**
For questions or collaboration:
- Name: Saeed or Eric
- Email: [email protected]
- Portfolio/Website: [SaeedMasoudie.ir](https://www.saeedmasoudie.ir/)### **Credit**
- Dash Ui and Bootstrap For Frontend