Skip to content

Una semplice chat da terminale che permette la comunicazione tra più dispositivi connessi alla stessa rete locale (LAN), con crittografia end-to-end e nessun salvataggio dei dati.

License

Notifications You must be signed in to change notification settings

Kerlooo/LAN-CryptoChat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔐 LAN CryptoChat

Una chat web che permette la comunicazione tra più dispositivi connessi alla stessa rete locale (LAN), con crittografia e nessun salvataggio dei dati.


📌 Caratteristiche principali

  • Interfaccia web moderna e responsive
  • Supporto per stanze multiple
  • Crittografia dei messaggi
  • Tema scuro con colore personalizzabile
  • Nessun salvataggio dei messaggi
  • Accessibile da qualsiasi dispositivo con un browser

🚀 Come iniziare

Requisiti di sistema

  • Python 3.8 o superiore
  • pip (gestore pacchetti Python)

Installazione su Debian/Ubuntu

  1. Installa Python e pip se non sono già installati:
sudo apt update
sudo apt install python3 python3-pip python3-venv
  1. Clona il repository:
git clone https://github.com/Kerlooo/LAN-CryptoChat
cd LAN-CryptoChat
  1. Crea e attiva un ambiente virtuale:
python3 -m venv myenv
source myenv/bin/activate
  1. Installa le dipendenze:
pip install -r requirements.txt

Avvio dell'applicazione

  1. Attiva l'ambiente virtuale se non è già attivo:
source myenv/bin/activate
  1. Avvia il server:
python web_server.py
  1. Accedi alla chat:
  • Apri il browser su http://IP_DEL_SERVER:5000
  • Inserisci il tuo username e il nome della stanza
  • Inizia a chattare!

Note importanti

  • Assicurati che tutti i dispositivi siano sulla stessa rete locale
  • Il firewall potrebbe bloccare le connessioni. Se necessario, apri la porta 5000:
sudo ufw allow 5000

🎨 Funzionalità

💬 Chat

  • Supporto per stanze multiple
  • Username personalizzati
  • Messaggi di stato per entrate/uscite
  • Crittografia dei messaggi

⚙️ Personalizzazione

  • Tema scuro moderno
  • Colore principale personalizzabile
  • Salvataggio delle preferenze
  • Interfaccia responsive per mobile

🔒 Sicurezza

  • Crittografia dei messaggi
  • Nessun salvataggio dei dati
  • Connessioni solo in rete locale

📁 Struttura del progetto

├── static/
│   ├── css/
│   │   └── style.css
│   └── js/
│       └── chat.js
├── templates/
│   └── index.html
├── crypto_utils.py
├── web_server.py
├── README.md
└── requirements.txt

🧠 Tecnologie utilizzate

Scopo Tecnologie / Librerie
Backend Flask, Flask-SocketIO
Frontend HTML5, CSS3, JavaScript
WebSocket Socket.IO
Crittografia cryptography

Licenza

Questa guida è distribuita sotto la licenza Creative Commons Attribution 4.0 International (CC BY 4.0).

Sei libero di:

  • Condividere — riprodurre, distribuire, comunicare al pubblico, esporre in pubblico, rappresentare, eseguire e recitare questo materiale con qualsiasi mezzo e formato.
  • Modificare — remixare, trasformare il materiale e basarti su di esso per le tue opere per qualsiasi fine, anche commerciale.

Alle seguenti condizioni:

  • Attribuzione — Devi riconoscere una menzione di paternità adeguata, fornire un link alla licenza e indicare se sono state effettuate delle modifiche.

Per maggiori dettagli, vedi il file LICENSE o visita creativecommons.org.

License: CC BY 4.0

About

Una semplice chat da terminale che permette la comunicazione tra più dispositivi connessi alla stessa rete locale (LAN), con crittografia end-to-end e nessun salvataggio dei dati.

Topics

Resources

License

Stars

Watchers

Forks