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.jsoncomme suit :"scripts": { "start": "node index.js", "dev": "nodemon index.js", "test": "echo \"Error: no test specified\" && exit 1" }
-
Créer un fichier
.envavec les valeurs suivantes :API_PORT=8000 API_HOST=localhost SSL=false MONGO_URI= mongodb://localhost:27017/dylchat TOKEN_KEY=random_string
-
-
Taper
npm run devpour 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 lignedes 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 unGETAPI sur/getAllMessagesavec l'IdChat en body de requète -
selectContact(): clear le tableaumessagesArrayet appelergetMessages(idchat)pour le re-remplir - Ajouter une icône pour le statut
En lignedes contacts et les conversations chiffrées - Bouton option en haut à droite du contact (?)
- Ajouter un bouton pour supprimer un message ou une conversation (?)