🌳 DevTree
- API REST desarrollada con Node.js, Express y TypeScript para gestionar los usuario. Permite la creación, consulta, actualización y eliminación de usuarios, asegurando un manejo eficiente de los datos.
- Cliente realizado con React para la interfaz de usuario.Tailwind CSS para estilizar la interfaz.
BACKEND
🚀 Tecnologías utilizadas
- 🟢 Node.js - Entorno de ejecución de JavaScript.
- ⚡ Express.js - Framework para construir la API REST.
- 🟦 TypeScript - Tipado estático para mayor robustez.
- 🐘 MongoDB - Base de datos relacional utilizada.
- 🔐 JWT (JSON Web Tokens) - Autenticación segura.
- 📡 CORS - Configuración de seguridad para peticiones externas.
📡 Endpoints de la API
La API expone los siguientes endpoints:
🌱 Autenticación
POST /auth/register
→ Registra un nuevo usuario.POST /auth/login
→ Inicia sesión y devuelve un token JWT.
🌿 Gestión de Usuarios
GET /user
→ Obtiene la lista de usuarios.POST /user
→ Crea un nuevo usuario.GET /user/:id
→ Obtener usuario especifico.PUT /user/:id
→ Actualiza la información del usuarioDELETE /user/:id
→ Elimina un usuario
📌 Manejo de Errores: Todas las respuestas incluyen códigos HTTP adecuados y mensajes descriptivos.
🔐 Autenticación
- Se usa JWT para autenticación de usuarios.
Para acceder a endpoints protegidos, es necesario enviar un token en el header:
Authorization: Bearer <token_jwt>
El token se genera al iniciar sesión (/auth/login).
Nota: : Deploy del Web service realizado en Render, la capa gratuita tiende a demorar de 1 a 2 minutos para su primera respuesta.
📦 Instalación y Configuración
Sigue estos pasos para instalar y ejecutar el proyecto localmente:
-
Clona el repositorio:
git clone https://github.com/brizusan/fake-tree-backend.git cd fake-tree-backend
-
Configura las variables de entorno:
DATABASE_URL=postgresql://usuario:password@localhost:5432/fake_tree JWT_SECRET=clave_secreta PORT=4000
-
Inicia el servidor:
npm run dev
FRONTEND
🚀 Tecnologías utilizadas
- ⚛️ React - Biblioteca para la construcción de interfaces de usuario.
- 🟦 TypeScript - Tipado estático para mayor seguridad y mantenibilidad.
- ⚡ Vite - Entorno de desarrollo rápido y eficiente.
- 🎨 Tailwind CSS - Framework para un diseño responsivo y moderno.
- 🔗 Axios - Cliente HTTP para la comunicación con la API.
- 🔗 React Query - Librería para la gestión de estados y consultas de datos de manera optimizada.
✨ Funcionalidades
✅ Visualización de Redes Sociales
✅ Gestión de Redes Sociales: Agregar, editar y eliminar links de redes sociales.
✅ Seleccionar orden: Puedes ordenar como se mostrarán los links de redes sociales(Drag & Drop).
✅ Persistencia de datos: Comunicación con un backend para almacenar los cambios.
✅ Autenticación con JWT: Permite gestionar sesiones de usuario.
✅ Actualizacion de Informacion: Permite actualizar la información del usuario.
📌 Manejo de Errores: Todas las respuestas incluyen códigos HTTP adecuados y mensajes descriptivos.
📜 Licencia
Este proyecto está bajo la licencia MIT.