Una pequeña aplicación de chat creada con el stack MEAN
Integrantes de la aplicación:
- Luis Gabriel González López
- Manuel David Montalvan
- Lina Magally Moreno Ulloa
Registrar y autenticar usuarios usando tokens web JSON
-
Únase a una sala común donde puede chatear con todos los usuarios registrados
-
Abra conversaciones privadas 1 a 1 con un usuario de su elección
-
Notificaciones de mensajes sobre conversaciones en segundo plano.
-
Tenga una UI/UX agradable creada para verse increíble desde el móvil al escritorio
# clone the repo
git clone https://github.com/LuisGonzalez321/chat-dsi.git
# [backend api]
# cambiar al directorio repo
cd back
# instalar dependencias del servidor
npm install
# !¡cree un archivo .env con el modelo de .env.example!
cp .env.example .env
# iniciar el servidor de desarrollo
npm run dev
# ahora abre otra ventana de terminal
# [aplicación angular de]
# cambiar al directorio angular src
cd front
# instalar dependencias frontend
npm install
# iniciar el servidor de desarrollo angular
npm start
Then visit http://localhost:4200 in your browser.
-
NodeJS - Solución de elección del lado del servidor/backend de JavaScript
-
Express - Marco de node que facilita el manejo de solicitudes http
-
JsonWebToken - paquete que ayuda a generar JWT para una autenticación segura
-
PassportJS - middleware de autenticación utilizado para proteger ciertas partes de la aplicación para solicitudes no autenticadas
-
-
MongoDB - solución de almacenamiento de datos que solo habla JSON y se empareja muy bien con Node
En el lado del cliente, los usuarios pueden crear cuentas que se almacenarán en la base de datos. Luego, los usuarios pueden autenticarse con las credenciales dadas, si son correctas, el servidor envía un token único al cliente. El cliente lo almacena para usarlo en solicitudes de ruta de back-end restringidas.
Una vez autenticado, el servidor crea una conexión bidireccional de socket con el cliente para facilitar la funcionalidad de chat.
Cada vez que un usuario envía un mensaje, este va al servidor que lo redirige al encuestado deseado. Además cada vez que un usuario entra o sale del chat, el servidor anuncia todos los clientes conectados.