Telepathy is an anonymous, real-time chat platform with end-to-end RSA encryption.
Messages are always stored encrypted in the database and decrypted using the user's private key before being displayed. Digital signatures are also used for message integrity.
git clone https://github.com/Rarees404/pentour.git
For server-side version: git switch Final_Product
For client-side version: git switch Final_ClientSide
cd pentourMake sure Python 3 is installed on your system.
To upgrade:
brew install pythonsudo apt update
sudo apt install python3 python3-venv python3-pip- Download Python from: https://www.python.org/downloads/
- Run the installer, and make sure to check "Add Python to PATH".
- Verify installation:
python --versionMake sure PostgreSQL is installed and running on your system.
Option A: Download Installer (Windows)
Download and run the PostgreSQL installer from the link (https://www.postgresql.org/download/) and follow the setup wizard instructions.
Option B (macOS): Install via Homebrew
brew install postgresql
initdb /usr/local/var/postgres
brew services start postgresql
brew services status postgresql
brew services stop postgresql //stop server after finish
Option C (Linux/Ubuntu):
sudo apt update
sudo apt install postgresql postgresql-contrib
sudo service postgresql start
sudo service postgresql stop //stop the server after you finishOpen a terminal or command prompt and enter the PostgreSQL shell:
psql postgrespsql -U postgresThen run the following commands one by one inside the PostgreSQL shell:
DROP DATABASE IF EXISTS my_database;
DROP ROLE IF EXISTS myproject_user;
CREATE ROLE myproject_user
WITH LOGIN
PASSWORD 'mysecretpassword'
CREATEDB
CREATEROLE
INHERIT;
CREATE DATABASE my_database
OWNER = myproject_user
ENCODING = 'UTF8'
LC_COLLATE = 'en_US.UTF-8'
LC_CTYPE = 'en_US.UTF-8'
TEMPLATE = template0;If during the commands execution you notice a change (postgres=# -> postgres-#) type \r. After creating the role, you should see:
CREATE ROLE
After creating the database, you should see:
CREATE DATABASE
To quit the shell:
\qNavigate to the project folder:
cd pentourCreate and activate a virtual environment:
python3 -m venv venv
source venv/bin/activatepython -m venv venv
venv\Scripts\activatepip install --upgrade pip
pip install -r requirements.txt
pip install colorlog django-postgrespool2 pillow channels==4.2.0 channels_redis psycopg2-binarypython manage.py makemigrations
python manage.py migrate
do empty the db: python manage.py flushpython manage.py runserverOnce the server is running, open your browser and navigate to: For more information read the "Developer Notes" http://127.0.0.1:8000/
For testing purposes, we recommend using an incognito/private tabs on different browser windows.
This ensures that localStorage (tokens/keys) is cleared between user sessions.
If you're creating a new user after logout, make sure to open a new incognito window.
If you encounter errors during setup or usage, feel free to contact the developer: