Skip to content

Challenge

Andres edited this page Jul 10, 2025 · 1 revision

Challenge ingreso a Academia ForIT 2025

Objetivo

Crear una aplicación básica de lista de tareas que demuestre conocimientos fundamentales de Git, JavaScript, Node.js y React.

Requisitos

Crear un repositorio público en GitHub (o similar) para el proyecto.
Crear una carpeta para el backend.
Y otra carpeta para el frontend.
Crear un servidor básico con Express.

Implementar los siguientes endpoints:

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

Usar un array en memoria como almacenamiento temporal.
Implementar manejo básico de errores.
Crear una aplicación de React con Vite (o similar).
Implementar los siguientes páginas/componentes (usando algún router)

  • TaskList - Muestra la lista de tareas
  • TaskItem - Muestra una tarea individual
  • TaskForm - Formulario para crear/editar tareas

Implementar llamadas a la API de express usando fetch
Configurar variables de entorno tanto para la api como el frontend
Usar CSS básico para darle estilo a la aplicación

  • Estructura recomendada de una tarea

Criterios de evaluación

No es necesario que esté perfecto pero debe funcionar adecuadamente y se debe demostrar conocimientos básicos de las tecnologías descriptas. Vamos a tener en cuenta:

Que la funcionalidad básica esté completa (crear, leer, actualizar y eliminar tareas).
Utilizaremos la configuración recomendada de Eslint para evaluar el código.
Que se haya hecho uso correcto básico de Git para el ecosistema de Node.js.
Manejo adecuado de estado en React en componentes funcionales mediante hooks.
Implementación correcta de la API en Node.js.
Que no se haya usado ChatGPT o similar para la total creación del código.
Esto tiene que ser una demostración de lo que cada uno sabe de las tecnologías mencionadas.

Bonus (completamente opcionales)

Cualquier otra característica que deseen agregar es bienvenida.
Algunas ideas:

  • NextJS en vez de React y Express
  • Filtros para mostrar tareas completadas/pendientes
  • Validación de formularios
  • Persistencia con sqlite3
  • Funcionalidad de búsqueda
  • Usar TypeScript en lugar de JavaScript
  • Utilizar Tailwind o Bootstrap para los estilos, o SASS.

Incluí las instrucciones para ejecutar la aplicación localmente en el README.md
Incluí screenshots de la aplicación funcionando en el README.md

Clone this wiki locally