1.0.0 • Published 1 year ago
@vladiip93/gestor-tareas-hogar v1.0.0
Gestor de Tareas del Hogar
Vladimir Escobar
NRC: 17713
Descripción
Este proyecto es una aplicación web de gestión de tareas para el hogar que permite a los usuarios crear, leer, actualizar y eliminar (CRUD) tareas. La aplicación está construida con un frontend en Stencil y TypeScript, y un backend en Express con MySQL.
Características
- Crear nuevas tareas
 - Visualizar lista de tareas
 - Editar tareas existentes
 - Eliminar tareas
 - Interfaz de usuario intuitiva y responsiva
 
Tecnologías Utilizadas
- Frontend:
- Stencil
 - TypeScript
 - HTML5
 - CSS3
 
 - Backend:
- Node.js
 - Express
 - MySQL
 
 - Otras herramientas:
- Axios para peticiones HTTP
 - CORS para manejo de solicitudes de origen cruzado
 
 
Estructura del Proyecto
home-task-manager/
frontend/
src/
components/
app-root/
task-list/
task-form/
task-item/services/
task.service.tsmodels/
task.model.ts
index.html
index.tspackage.json
tsconfig.json
stencil.config.ts
backend/
src/
routes/
  tasks.tsmodels/
  task.tsconfig/
  database.tsapp.ts
package.json
tsconfig.json
Instalación y Configuración
Frontend
- Navega al directorio 
frontend: cd frontend - Instala las dependencias: npm install
 - Inicia el servidor de desarrollo: npm start
 
Backend
- Navega al directorio 
backend: cd backend - Instala las dependencias: npm install
 - Configura la base de datos MySQL:
 
- Crea una base de datos llamada 
home_tasks - Actualiza las credenciales en el archivo 
.env 
- Inicia el servidor: npm run dev
 
Uso
Una vez que ambos servidores estén en funcionamiento:
1. Abre tu navegador y ve a http://localhost:3333
2. Usa el formulario en la parte superior para agregar nuevas tareas
3. Las tareas aparecerán en la lista debajo del formulario
4. Cada tarea tiene opciones para editar y eliminar
Componentes Principales
Frontend
app-root: Componente principal que estructura la aplicacióntask-form: Maneja la creación de nuevas tareastask-list: Muestra la lista de tareas y gestiona la actualización de la listatask-item: Representa una tarea individual con opciones para editar y eliminar
Backend
app.ts: Punto de entrada del servidor Expressroutes/tasks.ts: Define las rutas API para las operaciones CRUDmodels/task.ts: Modelo de datos para las tareas y funciones de interacción con la base de datosconfig/database.ts: Configuración de la conexión a la base de datos MySQL
Mejoras Futuras
- Implementar autenticación de usuarios
 - Añadir categorías a las tareas
 - Implementar un sistema de recordatorios
 - Mejorar el diseño y la experiencia de usuario
 - Añadir tests unitarios y de integración
 
Repositorio de GitHub
1.0.0
1 year ago