Skip to content

Este proyecto es un sistema de gestión de tareas completo que incluye tanto una API backend como una aplicación frontend. Permite la creación, actualización, eliminación y consulta de tareas, prioridades y estados.

Notifications You must be signed in to change notification settings

dtoro-dev/tasks-manager

Repository files navigation

Task Manager API & Frontend

TypeScript Node.js Express Prisma SQLite Angular Tailwind CSS

GitHub stars GitHub issues GitHub forks GitHub PRs

Descripción

Este proyecto es un sistema de gestión de tareas completo que incluye tanto una API backend como una aplicación frontend. Permite la creación, actualización, eliminación y consulta de tareas, prioridades y estados.

Dashboard

  • Backend: Construido con Node.js, Express, y Prisma para gestionar la lógica del negocio y el almacenamiento de datos en una base de datos SQLite.
  • Frontend: Desarrollado en Angular 14 con Tailwind CSS para la creación de interfaces de usuario modernas y responsivas.

Características

  • Dashboard: Muestra un resumen de todas las tareas.
  • Gestión de Tareas: Puedes agregar, editar y eliminar tareas fácilmente.

Tasks

Backend

  • CRUD de Tareas: Crear, leer, actualizar y eliminar tareas.
  • Manejo de Prioridades y Estados: Gestionar prioridades y estados asociados a las tareas.
  • Base de datos SQLite: Ligera y eficiente para proyectos pequeños a medianos.
  • TypeScript: Mejora la calidad del código con tipos estáticos.

Frontend

  • Interfaz de Usuario Moderno: Construido con Angular 14 y estilizado con Tailwind CSS.
  • Gestión de Tareas: Interfaces intuitivas para gestionar tareas, incluyendo la creación, edición y visualización.
  • Componentes Reutilizables: Componentes modulares para facilitar la expansión y mantenimiento.
  • Routing Dinámico: Navegación fluida entre diferentes vistas como el dashboard, lista de tareas, etc.

Tecnologías Utilizadas

Backend

Frontend

Instalación

Backend

  1. Clona este repositorio:
git clone https://github.com/tuusuario/task-manager-api.git
cd task-manager/api
  1. Instala las dependencias:
npm install
  1. Crea un archivo .env en la raíz del proyecto con las variables de entorno necesarias:
PORT=3000
DATABASE_URL="file:./dev.db"
  1. Ejecuta las migraciones para configurar la base de datos:
npx prisma migrate dev --name init
  1. Inicia el servidor de desarrollo:
npm run dev

Frontend

  1. Navega a la carpeta raíz para posicionarte en front
cd task-manager
  1. Instala las dependencias:
npm install
  1. Inicia la aplicación frontend:
ng serve
  1. Accede a la aplicación en http://localhost:4200.

Uso

Aplicación diseñada para ayudar a los usuarios a gestionar sus tareas diarias de manera eficiente. La aplicación ofrece un Dashboard central donde se resumen todas las tareas según su estado: pendientes, en proceso, finalizadas y vencidas. Además, permite acceder a una vista detallada de las tareas individuales, donde los usuarios pueden ver, editar y actualizar el estado de cada tarea.

Funcionalidades Principales

  1. Dashboard: Al acceder a la aplicación, los usuarios son recibidos con un dashboard que proporciona una visión general del estado de todas sus tareas a lo largo del año actual. El dashboard se divide en cuatro categorías principales:
  • Pendientes: Tareas que aún no se han iniciado.
  • En Proceso: Tareas que están actualmente en progreso.
  • Finalizadas: Tareas que han sido completadas.
  • Vencidas: Tareas que no se completaron a tiempo.

Esta visualización ayuda a los usuarios a identificar rápidamente el estado de sus proyectos y a priorizar sus actividades en consecuencia.

DashboardDetail

Gestión de Tareas: Los usuarios pueden acceder a una vista más detallada de las tareas, donde pueden ver información específica sobre cada tarea, como su prioridad, fecha de vencimiento, y estado actual. Desde esta vista, es posible actualizar el estado de las tareas, lo que facilita la gestión y el seguimiento de las mismas.

TaskView TaskEdit TaskEdit TaskDelete TaskNextStep

Endpoints

TASKS

  • GET /tasks: Obtener todas las tareas.
  • POST /tasks: Crear una nueva tarea.
  • PUT /tasks/:id: Actualizar una tarea existente.
  • DELETE /tasks/:id: Eliminar una tarea.

PRIORITIES

  • GET /priority: Obtener todas las prioridades.
  • POST /priority: Crear una nueva prioridad.
  • PUT /priority/:id: Actualizar una prioridad existente.
  • DELETE /priority/:id: Eliminar una prioridad.

STATES

  • GET /state: Obtener todos los estados.
  • POST /state: Crear un nuevo estado.
  • PUT /state/:id: Actualizar un estado existente.
  • DELETE /state/:id: Eliminar un estado.

Vistas de la Aplicación

  • Home: Vista de bienvenida y resumen del sistema (building).
  • Dashboard: Vista general de las tareas con estadísticas.
  • Tasks: Lista detallada de tareas con opciones de gestión.

About

Este proyecto es un sistema de gestión de tareas completo que incluye tanto una API backend como una aplicación frontend. Permite la creación, actualización, eliminación y consulta de tareas, prioridades y estados.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published