@vladiip93/gestor-tareas-hogar
v1.0.0
Published
Componente Stencil para gestión de tareas del hogar
Downloads
2
Maintainers
Readme
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.ts
models/
task.model.ts
index.html
index.ts
package.json
tsconfig.json
stencil.config.ts
backend/
src/
routes/
tasks.ts
models/
task.ts
config/
database.ts
app.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:
- Abre tu navegador y ve a
http://localhost:3333
- Usa el formulario en la parte superior para agregar nuevas tareas
- Las tareas aparecerán en la lista debajo del formulario
- 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