Quick Connect is an application that allows you to create chat rooms instantly from anywhere and connect with anyone. It's simple, fast, and designed to give users a quick and seamless communication experience.
- Instant Chat Rooms: Create a chat room on the fly with a unique timestamp-based identifier.
- Seamless Connections: Join or invite others to chat rooms from any device.
- Lightweight and Fast: Optimized for fast performance and instant messaging.
- No Signups Needed: No need for users to sign up; start chatting right away.
To install the dependencies and run the project, follow the steps below:
To convert the setup instructions to use virtualenv instead of pipenv, follow these steps:
- Clone the repository:
git clone https://github.com/taha2samy/QuickConnect.git cd quick-connect
2 Install virtualenv to manage the environment:
pip install virtualenv-
Create and activate the virtual environment:
virtualenv venv source venv/bin/activate # On macOS/Linux # OR venv\Scripts\activate # On Windows
-
Install the required packages:
pip install -r requirements.txt
-
Build the project database:
python manage.py migrate
-
Run the application:
python manage.py runserver
-
Copy the Unit Files: Use the
cpcommand to copy the service and timer files to the systemd directory:sudo cp unit_files/cleanup.service /etc/systemd/system/ sudo cp unit_files/cleanup.timer /etc/systemd/system/
Warning
you must edit unit_files/cleanup.service acccroding the path of your project
unit_files/cleanup.service
ExecStart=/bin/bash -c 'cd {full path}/project/ && {full path}/project/venv/bin/python manage.py cleanup'
You must edit unit_files/cleanup.timer according to the periodic time that removes expired files.
OnCalendar=daily
-
Reload Systemd Daemon: After copying the files, reload the systemd daemon to recognize the new unit files:
sudo systemctl daemon-reload
-
Enable the Timer: Enable the timer so that it starts automatically on boot:
sudo systemctl enable cleanup.timer -
Start the Timer: Start the timer immediately:
sudo systemctl start cleanup.timerTo verify that the timer is running, use the following command:
sudo systemctl status cleanup.timerThis conversion replaces pipenv with virtualenv for managing the environment, using a venv folder and the requirements.txt file for package installation.
- Open the application.
- Create a chat room by pressing the Create Chat Room button.
- Share the unique chat room identifier with the person you want to connect with.
- Start chatting instantly.
│ .gitignore
│ .python-version
│ db.sqlite3
│ LICENSE
│ logo.svg
│ manage.py
│ Pipfile
│ Pipfile.lock
│ readme.md
│
├───accounts
│ │ admin.py
│ │ apps.py
│ │ models.py
│ │ tests.py
│ │ urls.py
│ │ views.py
│ │ __init__.py
│ │
│ ├───migrations
│ │ __init__.py
│ │
│ ├───static
│ │ ├───css
│ │ │ all.min.css
│ │ │ bootstrap.min.css
│ │ │
│ │ ├───javascript
│ │ │ bootstrap-stackpath.min.js
│ │ │ bootstrap.min.js
│ │ │ jquery.min.js
│ │ │ popper-core.min.js
│ │ │ popper.min.js
│ │ │ qrious.min.js
│ │ │
│ │ └───webfonts
│ │ fa-solid-900.ttf
│ │ fa-solid-900.woff
│ │ fa-solid-900.woff2
│ │
│ └───templates
│ login.html
│ logout.html
│ signup.html
│
├───media
│ └───temp
├───QuickConnect
│ asgi.py
│ settings.py
│ urls.py
│ wsgi.py
│ __init__.py
│
├───rooms
│ │ admin.py
│ │ apps.py
│ │ consumers.py
│ │ models.py
│ │ routing.py
│ │ tests.py
│ │ views.py
│ │ __init__.py
│ │
│ ├───management
│ │ └───commands
│ │ cleanup.py
│ │
│ ├───migrations
│ │ __init__.py
│ │
│ └───templates
│ base.html
│ Home.html
│ navbar.html
│ room.html
│
└───unit_files
cleanup.service
cleanup.timer
Contributions are welcome! Please fork the repository and submit a pull request for review.
This project is licensed under the MIT License - see the LICENSE file for details.
Quick Connect – Instant connections, anywhere, anytime.
Feel free to modify the structure or the content based on your specific project details.