Web app de messagerie instantée chiffrée de bout en bout disponible sur 🔗 dylchat.fr.
Conversation de groupe, chiffrement end-to-end, messages privés et gestion du compte.
-
Installer Mongo (Linux Ubuntu) :
sudo apt get install mongo # Vérifier que tout fonctionne mongo > show dbs
-
À la racine du projet :
-
npm init -y
-
npm install cors mongoose express jsonwebtoken dotenv bcryptjs cookie-parser ws socket.io crypto-js
-
npm install nodemon -D
-
Modifier les scripts du fichier
package.json
comme suit :"scripts": { "start": "node index.js", "dev": "nodemon index.js", "test": "echo \"Error: no test specified\" && exit 1" }
-
Créer un fichier
.env
avec les valeurs suivantes :API_PORT=8000 API_HOST=localhost SSL=false MONGO_URI= mongodb://localhost:27017/dylchat TOKEN_KEY=random_string
-
-
Taper
npm run dev
pour lancer le serveur (index.js
) -
Le script s'actualise automatiquement avec
nodemon
à chaque modification de fichier -
Les messages "Listening on
http://localhost:8000
" et "Successfully connected to database" confirment le bon lancement du serveur
- Améliorer la gestion des statuts
En ligne
/Hors ligne
des utilisateurs - Gérer le cas de la double connexion pour un même utilisateur
- Modifier la façon de récupérer les messages d'un chat (pour gérer un + grand nombre de données)
- Requète pour fetch les 50 derniers messages pour les afficher
- Si l'utilisateur remonte son chat, la scrollbar se bloque le temps de fetch les 50 prochains messages
- Script
getMessages(idchat)
pour unGET
API sur/getAllMessages
avec l'IdChat en body de requète -
selectContact()
: clear le tableaumessagesArray
et appelergetMessages(idchat)
pour le re-remplir - Ajouter une icône pour le statut
En ligne
des contacts et les conversations chiffrées - Bouton option en haut à droite du contact (?)
- Ajouter un bouton pour supprimer un message ou une conversation (?)