Este proyecto combina un backend desarrollado en Flask API y un frontend en React. El backend implementa un árbol binario que sirve como base para gestionar dos tareas principales, las cuales a su vez tienen múltiples subtareas.
- Descripción del Proyecto
- Tecnologías Utilizadas
- Requisitos Previos
- Configuración
- Estructura del Proyecto
- Uso del Proyecto
- Contribución
- Licencia
Este proyecto tiene como objetivo:
- Gestión de Tareas Principales: Utiliza un árbol binario para organizar y priorizar dos tareas principales.
- Gestión de Subtareas: Cada tarea principal puede desprender múltiples subtareas, permitiendo una jerarquía clara y ordenada.
El backend maneja la lógica de datos y operaciones sobre el árbol binario, mientras que el frontend proporciona una interfaz intuitiva para interactuar con las tareas y subtareas.
- Backend: Flask API, Python
- Frontend: React, TypeScript, TailwindCSS, Zustand, ShadcnUI, Axios
Asegúrate de tener instalados los siguientes programas:
- Python 3.8 o superior
- Node.js y npm/pnpm
- Git
- Clona el repositorio:
git clone <URL_DEL_REPOSITORIO> cd <CARPETA_DEL_PROYECTO>
- Ve al directorio del backend:
cd backend - Crea y activa un entorno virtual:
python -m venv venv source venv/bin/activate # En Windows: venv\Scripts\activate
- Instala las dependencias:
pip install -r requirements.txt
- Inicia el servidor:
python app.py # Para Python de Microsoft Store: py app.py
El backend estará disponible en http://localhost:5000.
- Ve al directorio del frontend:
cd frontend - Instala las dependencias:
bun install
- Inicia la aplicación React:
bun run dev
El frontend estará disponible en http://localhost:5173.
- Accede a
http://localhost:3000para interactuar con la aplicación. - Desde el frontend, puedes:
- Ver las tareas principales y sus subtareas.
- Agregar, editar o eliminar tareas y subtareas.
- Visualizar la estructura jerárquica en tiempo real.
El backend se encargará de realizar las operaciones en el árbol binario y devolverá los datos actualizados al frontend.
Si deseas contribuir, por favor:
- Haz un fork del repositorio.
- Crea una rama para tu funcionalidad:
git checkout -b nueva-funcionalidad
- Realiza tus cambios y haz un commit:
git commit -m "Añadir nueva funcionalidad" - Envía un pull request.
Este proyecto está licenciado bajo la MIT License.