TaskExagonal es una aplicación de gestión de tareas (CRUD) construida con Node.js y TypeScript, implementando los principios de la Arquitectura Hexagonal (Ports & Adapters) para lograr una estructura desacoplada, escalable y mantenible.
- Crear, leer, actualizar y eliminar tareas.
- Separación clara entre lógica de negocio y adaptadores.
- Uso de TypeScript para tipado seguro.
- Arquitectura basada en puertos y adaptadores.
- Fácil de extender con nuevos frameworks, bases de datos o interfaces.
La Arquitectura Hexagonal (también conocida como Ports & Adapters) busca separar el núcleo de la aplicación (la lógica de negocio) de los detalles externos como bases de datos, interfaces web o APIs. Esto permite:
-
Mayor facilidad de pruebas.
-
Bajo acoplamiento y alta cohesión.
-
Mayor mantenibilidad y flexibilidad.
task-exagonal/
├── src/
│ ├── application/ # Casos de uso
│ ├── domain/ # Entidades y lógica de negocio
│ ├── infrastructure/ # Adaptadores (DB, HTTP, etc.)
│ ├── interfaces/ # Puertos (interfaces de entrada/salida)
│ └── main.ts # Punto de entrada de la app
├── tests/ # Pruebas unitarias
├── package.json
├── tsconfig.json
└── README.md
- Clona el repositorio:
git clone https://github.com/Jhomartic/TasksExagonal.git
cd TasksExagonal
- Instala las dependencias:
npm install
- Ejecuta el proyecto:
npm run dev
POST /tasks
{
"title": "Estudiar arquitectura hexagonal",
"description": "Revisar teoría y hacer un mini proyecto"
}
GET /tasks
- Node.js
- TypeScript
- Arquitectura Hexagonal
- Express (como adaptador HTTP)
- (Opcional) Base de datos como MongoDB, SQLite, etc.
Jhonatan David Martinez Ricardo
Frontend Developer & Software Engineer
📧 jhomartic321@gmail.com
🔗 https://github.com/Jhomartic
Este proyecto está bajo la licencia MIT. Consulta el archivo LICENSE para más información.