Messagerie Instantanée Fax : Différence entre versions
(→Photos) |
(→Photos) |
||
Ligne 106 : | Ligne 106 : | ||
===Photos=== | ===Photos=== | ||
Différentes photos de votre projet | Différentes photos de votre projet | ||
− | [FaXAppJsConst.jpg Fax AppJs Variables] | + | [[FaXAppJsConst.jpg Fax AppJs Variables]] |
− | [FaXAppJsEventEnvoyMessage.jpg Evenement Envoi] | + | [[FaXAppJsEventEnvoyMessage.jpg Evenement Envoi]] |
− | [FaXAppJsEventSocketIoMessageEnvoyeOuRecu.jpg Evenement SocketIo Message Envoye/Recu] | + | [[FaXAppJsEventSocketIoMessageEnvoyeOuRecu.jpg Evenement SocketIo Message Envoye/Recu]] |
− | [FaXAppJsFuctionSendMessage.jpg Fonction EnvoiMessage] | + | [[FaXAppJsFuctionSendMessage.jpg Fonction EnvoiMessage]] |
− | [FaXCssBodyH1.jpg Css Body et H1] | + | [[FaXCssBodyH1.jpg Css Body et H1]] |
− | [FaXCssContainerZonechatMessage.jpg Css Container et ZoneChatMessage] | + | [[FaXCssContainerZonechatMessage.jpg Css Container et ZoneChatMessage]] |
− | [FaXCssLight.jpg Css Illumination des fenêtres] | + | [[FaXCssLight.jpg Css Illumination des fenêtres]] |
− | [FaXCssmsgEnvoyRecu.jpg Css envoy/recu] | + | [[FaXCssmsgEnvoyRecu.jpg Css envoy/recu]] |
− | [FaXCssTextBoxBtn.jpg Css Style de la boite de texte] | + | [[FaXCssTextBoxBtn.jpg Css Style de la boite de texte]] |
− | [FaXHTMLBody.jpg HTML Body] | + | [[FaXHTMLBody.jpg HTML Body]] |
− | [FaXHTMLHead.jpg HTML Head] | + | [[FaXHTMLHead.jpg HTML Head]] |
− | [FaXServerJsConsoleConnectionDeco.jpg Server.js Console Connection Deconnection] | + | [[FaXServerJsConsoleConnectionDeco.jpg Server.js Console Connection Deconnection]] |
==catégorie== | ==catégorie== | ||
[[Catégorie:Tn6]] | [[Catégorie:Tn6]] |
Version du 26 mars 2025 à 13:32
Sommaire
Auteur
Corto, stagiaire émérite du #TremplinNumérique6 vous présente la messagerie instanée FaX
Projet
Création d’une application de messagerie instantanée
Gestion du backend et de la base de données.
Objectifs
# Un challenge intéressant. # Nouveaux languages et nouvelles librairies. # Travail sous contrainte de temps et rendre un projet fonctionnel. # Ajouter un projet concret à mon portfolio et valoriser mes compétences.
Étapes de votre projet
Création d'un cahier des charges le plus complet possible comprenant : (lien Media:Cahier_des_charges_FaX.pdf)
- Les besoins du projet
- Un apperçu des objectifs
- Les étapes de réalisations
- Une description du site avec des captures d'écran
- Choix de la charte graphique (police d'écriture et couleurs)
- Une ébauche du design du site (faite avec Excalidraw)
- Une decription technique du site
- Un bugdet et un planning
- Un projet de maintenance de l'application
Construction de la page de discussion
- Création de plusieur boites (cf capture d'écran ->)
- Implémentation boite de texte pour les dialogues et bouton d'envoi.
- Test du système d'api pour me familiariser avec le format de fichier JSON (JavaScript Oriented Notation).
- Implémentation de JavaScript (fichier app.js) pour afficher message dans la zone de texte dédiée.
- Ajout d'évenement "si l'utilisateur appui sur la touche entrée, alors j'envoi mon message"
- Dans le JavaScript : Différenciation entre message envoyé et message reçu.
- Création de server.js (via node.js)
- Test de Node.js
- Test de Socket.io
- Modification du système d'évènement pour les messages reçu et les messages emis avec socket io.
- Création d'un JSON dans le JavaScript de app.js pour pouvoir envoyer les infos "pseudo" et "message"
- On modifie le css pour rendre le site "joli"
- Ajout d'une fonction autoscroll pour faire en sorte que le site défile vers le bas dès qu'un nouveau message arrive.
Post projet perso
Côté client | Côté serveur |
---|---|
![]() |
![]() |
- Ajout d'un système d'authentification utilisateur (Pseudo)
- Afficher le pseudo et l'heure d'envoi à côté des messages dans la fenêtre de discussion
- Ajout d'une base de donnée pour stocker les informations
(pour l'instant tout est dans le cache du navigateur,
des qu'on recharge la page toutes les infos sont éffacés) - Ajout d'une liste de discussion sur la gauche de la fenêtre de chat
- Ajout de la création de salon privés
- Ajout d'une page contact
- Ajout d'une page paramêtre pour changer le pseudo et l'image
Compétences
Noter ici les compétences dont vous avez eu besoin.
date
Du 17/03/2025 au 28/03/2025
Ressources
- IDE : VSCodium
- Schémas : Excalidraw
- Outil de création de présentation et diapos : Canva
- Gestion du server : Node.js
- Gestion des sockets de connections : Socket.io
- Votre présentation finale (celle que vous allez présenter au jury)
Aide technique
- Contact
- Introduction au HTML/CSS
- Css : Display flex
- Mooc sur le JavaScript OpenClassRoom Javascript
- Qu'est-ce qu'un fichier JSON ?
- Qu'est-ce qu'une API
- Tutoriel construction d'une application simple de messagerie instantantée Medium.com
- Tutoriel de socket.io (English) Socket.io
matériel et outils utilisés
Un pc et une connection internet !
Photos
Différentes photos de votre projet FaXAppJsConst.jpg Fax AppJs Variables FaXAppJsEventEnvoyMessage.jpg Evenement Envoi FaXAppJsEventSocketIoMessageEnvoyeOuRecu.jpg Evenement SocketIo Message Envoye/Recu FaXAppJsFuctionSendMessage.jpg Fonction EnvoiMessage FaXCssBodyH1.jpg Css Body et H1 FaXCssContainerZonechatMessage.jpg Css Container et ZoneChatMessage FaXCssLight.jpg Css Illumination des fenêtres FaXCssmsgEnvoyRecu.jpg Css envoy/recu FaXCssTextBoxBtn.jpg Css Style de la boite de texte FaXHTMLBody.jpg HTML Body FaXHTMLHead.jpg HTML Head FaXServerJsConsoleConnectionDeco.jpg Server.js Console Connection Deconnection