Crea una Aplicación de Lista de Tareas con React y Local Storage: Guía Fácil

Crea una Aplicación de Lista de Tareas con React y Local Storage: Guía Fácil

Tutorial paso a paso para crear una aplicación de lista de tareas con React

En este tutorial diseñado para desarrolladores principiantes e intermedios, aprenderás a crear una aplicación lista de tareas (to-do list) utilizando React. Cubriremos desde la configuración inicial del proyecto con Create React App, hasta la implementación completa con componentes funcionales, manejo de estados con React Hooks, y almacenamiento persistente usando Local Storage.

¡Vamos a profundizar en el desarrollo frontend con React juntos!


¿Qué aprenderás en este tutorial?

  • Configurar un proyecto React con Create React App
  • Crear componentes funcionales en React
  • Manejar estado utilizando React Hooks
  • Implementar funcionalidades para agregar, eliminar y marcar tareas como completas
  • Guardar y recuperar datos usando Local Storage para almacenamiento local React

Este tutorial lista de tareas React, ideal para quienes quieren crear to-do app React, te proporcionará todos los pasos y el código necesario con explicaciones claras.


1. Configuración del proyecto con Create React App

Para comenzar, necesitamos configurar el entorno de desarrollo con React. La forma más sencilla es usando Create React App, que crea una estructura básica lista para empezar a desarrollar.

Paso 1: Instalar Create React App e iniciar un proyecto

Abre una terminal (o línea de comandos) y ejecuta:

  • npx create-react-app todo-app crea una carpeta llamada todo-app con el proyecto inicial.
  • cd todo-app entra en la carpeta.
  • npm start inicia la aplicación en modo desarrollo, normalmente en http://localhost:3000

Si ves la página de bienvenida de React, ¡todo está listo para comenzar!


2. Estructura básica y creación de componentes funcionales

React recomienda dividir la UI en componentes que se puedan reutilizar y gestionar por separado.

Vamos a crear los siguientes componentes:

  • App: Componente principal que mantiene el estado y maneja la lógica
  • TodoForm: Formulario para agregar nuevas tareas
  • TodoList: Lista que muestra las tareas
  • TodoItem: Elemento individual de tarea

Limpieza inicial

En src/App.js, limpiaremos el código para tener una base simple:


3. Manejo de estado con React Hooks

Para almacenar las tareas, usaremos el hook useState.

En React, state representa la información que puede cambiar en la aplicación.

Paso 1: Añadir estado para las tareas en App.js

El arreglo tasks guardará cada objeto tarea con propiedades como id, text y completed.


4. Crear componente para agregar tareas (TodoForm)

Un formulario donde el usuario escribe la nueva tarea y la añade a la lista.

Código de TodoForm.js:

Explicación:

  • useState controla el valor del input.
  • Al enviar, se manda la tarea al componente padre con addTask.

5. Crear componentes para mostrar tareas (TodoList y TodoItem)

TodoItem.js

Un componente que representa una tarea individual:

TodoList.js

Lista que muestra todos los TodoItem:


6. Conectar componentes y manejar funcionalidades en App.js

Ya tenemos todos los componentes, ahora los importamos y unimos la funcionalidad.

Código actualizado App.js:

Explicación paso a paso:

  • Usamos useState con una función inicializadora para cargar tareas almacenadas en Local Storage.
  • Cada vez que tasks cambian, el efecto con useEffect guarda la lista actualizada en el almacenamiento local.
  • Las funciones addTask, deleteTask y toggleComplete modifican el estado de las tareas.
  • La UI renderiza el formulario y la lista pasando estas funciones como props.

7. Estructura de carpetas recomendada

Para un proyecto organizado, se sugiere esta estructura dentro de src:


8. Mejoras y buenas prácticas

  • Añade validación para evitar tareas vacías.
  • Usa useCallback para optimizar funciones si el proyecto crece.
  • Estiliza con CSS o frameworks (Bootstrap, Material UI).
  • Considera usar useReducer para manejar estados complejos.
  • Agrega filtros para mostrar tareas completadas o pendientes.
  • Implementa tests para componentes y funciones.

9. Finalizando.

¡Felicidades! Has creado tu propia aplicación to-do list con React desde cero. Has aprendido a configurar un proyecto React, crear componentes funcionales, manejar estados con React Hooks y almacenar datos en el navegador con Local Storage.

Esta lista de tareas te servirá como base sólida para proyectos frontend más complejos y mejorar tus habilidades en desarrollo React.

¿Cuál es el siguiente paso?

  • Experimenta agregando nuevas funcionalidades:
  • Editar tareas
  • Ordenar la lista
  • Filtros por estado
  • Integra styled-components o CSS Modules para mejorar estilos
  • Publica tu aplicación con GitHub Pages o Vercel

Comparte este tutorial lista de tareas React con otros desarrolladores y sigue aprendiendo con más tutoriales React hooks tutorial y almacenamiento local React.

¡Mucho éxito en tu camino como desarrollador frontend!


Código completo App.js para referencia