POLITICA DE COOKIES

Q2BSTUDIO.COM utiliza cookies técnicas, analíticas, de sesión y de publicidad con la finalidad de prestar un mejor servicio. No obstante, necesitamos su consentimiento explícito para poder utilizarlas. Así mismo puede cambiar la configuración de las cookies u obtener más información aquí .

Primera App Full-Stack CRUD con FastAPI y React

Primera App Full-Stack CRUD con FastAPI y React: guía paso a paso

Publicado el 04/09/2025

Guía para principiantes para crear, conectar y desplegar una aplicación web CRUD completa con FastAPI y React

¿Alguna vez te has preguntado cómo funcionan las aplicaciones web por dentro y cómo se crean, muestran, actualizan y eliminan datos? En este tutorial construirás una aplicación CRUD de principio a fin con FastAPI en el backend y React en el frontend, y la publicarás en internet para compartirla con quien quieras. En Q2BSTUDIO somos una empresa de desarrollo de software y aplicaciones a medida, especialistas en inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, automatización y mucho más. Si necesitas un equipo para acelerar tu proyecto, descubre nuestro enfoque de software a medida y aplicaciones a medida.

Qué vas a construir

Un sistema sencillo de gestión de ítems con las operaciones clave de cualquier CRUD: crear nuevos ítems con nombre y descripción, listar todos los ítems, editar ítems existentes y eliminar los que ya no necesites.

Requisitos previos

Conocimientos básicos de Python y JavaScript. Python 3.7 o superior instalado. Node.js y npm instalados. Un editor de texto, por ejemplo VS Code.

Parte 1 Configurar el backend con FastAPI

FastAPI es un framework moderno y rápido para construir APIs con Python, ideal para empezar porque genera documentación interactiva automáticamente.

Paso a paso backend

1 Crea la estructura del proyecto

En la terminal ejecuta: mkdir crud-app, cd crud-app, python -m venv venv

2 Activa el entorno virtual

En macOS o Linux: source venv/bin/activate. En Windows: venv\Scripts\activate. Así todo lo que instales queda aislado en este proyecto.

3 Instala dependencias

pip install fastapi uvicorn sqlalchemy aiosqlite

FastAPI será el framework, Uvicorn el servidor ASGI, SQLAlchemy el ORM y aiosqlite permitirá operaciones asíncronas con SQLite para un arranque sencillo.

4 Prepara los archivos del backend

Crea una carpeta backend y dentro los archivos main.py, database.py, models.py y schemas.py. En database.py define la URL de SQLite, crea el engine, la clase SessionLocal y la base para los modelos. En models.py define el modelo Item con los campos id, name y description. En schemas.py define con Pydantic los esquemas ItemBase con name y description, ItemCreate para crear y Item con id para respuestas, activando orm_mode para convertir desde modelos de base de datos.

5 Crea la aplicación FastAPI

En main.py arranca la app, crea las tablas con Base.metadata.create_all, añade el middleware CORS permitiendo peticiones desde https://localhost:3000, define la dependencia get_db para abrir y cerrar sesiones de base de datos y expón los endpoints CRUD: POST en la ruta items para crear, GET en items para listar, GET en items con parámetro item_id para obtener un ítem, PUT en items con item_id para actualizar y DELETE en items con item_id para eliminar. Usa response_model para validar las respuestas y maneja errores 404 cuando no existan registros.

6 Ejecuta el servidor

Entrando en la carpeta backend, lanza uvicorn main:app --reload. Tu API quedará disponible en https://localhost:8000 y la documentación interactiva en https://localhost:8000/docs.

Parte 2 Construir el frontend con React

React es una librería de JavaScript para crear interfaces de usuario. Generarás una interfaz simple para hablar con tu API.

1 Crea la app de React

Desde la raíz del proyecto ejecuta npx create-react-app frontend y luego cd frontend.

2 Instala Axios para las llamadas a la API

npm install axios. Axios simplifica las peticiones HTTP desde React.

3 Implementa la lógica en la app

En tu componente principal define estado para la lista de ítems, los campos del formulario y el id en edición. Crea funciones para consultar todos los ítems con GET, crear con POST, actualizar con PUT y eliminar con DELETE contra la URL base de la API en https://localhost:8000. Con useEffect carga la lista al montar el componente. Cambia el formulario entre modo crear y modo editar según la variable de estado de edición y actualiza la UI en cada operación.

4 Estilos

Añade estilos básicos en tu hoja CSS para el formulario, la lista y los botones, priorizando claridad y usabilidad.

5 Ejecuta el frontend

Con npm start abrirás la app en https://localhost:3000. Ya podrás crear, listar, editar y eliminar ítems.

Parte 3 Conectar backend y frontend

La comunicación se realiza mediante peticiones HTTP. El frontend envía llamadas con Axios a rutas concretas. El backend FastAPI recibe, procesa y responde, leyendo o escribiendo en la base de datos. Después React actualiza la interfaz según la respuesta. Claves de la conexión: la constante base de la API debe apuntar a https://localhost:8000 y el middleware CORS debe permitir el origen https://localhost:3000.

Parte 4 Desplegar tu aplicación en internet

Puedes usar plataformas gestionadas para simplificar el despliegue. El flujo general para el backend es preparar un archivo de dependencias, un comando de arranque con Uvicorn y subir el código con Git a la plataforma elegida. Para el frontend genera un build de producción con npm run build y sirve los archivos estáticos en un hosting acorde. Si quieres asesoría o infraestructura robusta, nuestro equipo puede ayudarte con arquitectura, escalado, CI CD y observabilidad en servicios cloud aws y azure. Conoce más sobre nuestros servicios cloud en Azure y AWS.

Buenas prácticas para empezar

Organiza el código separando backend y frontend. Usa variables de entorno para configurar la URL de la API y secretos. Maneja errores con try catch en todas las llamadas. Documenta las partes clave. Usa Git desde el primer día. Desarrolla de forma incremental, probando cada función de manera aislada. Para producción evalúa cambiar SQLite por PostgreSQL u otro motor gestionado.

Solución de problemas frecuentes

Errores CORS revisa orígenes permitidos en el backend. Fallos de conexión valida que la API esté levantada y que la URL base sea correcta. Problemas de base de datos en producción utiliza una base de datos gestionada. Fallos de build verifica dependencias y versiones de Node y Python.

Próximos pasos

Agrega autenticación de usuarios, relaciones de datos más complejas, carga de imágenes, validación avanzada de formularios y mejora de UI con librerías como Material UI o Bootstrap. Explora automatización de procesos, agentes IA y analítica con power bi dentro de tus flujos de negocio. En Q2BSTUDIO te ayudamos a llevar tu app al siguiente nivel con software a medida, ia para empresas, ciberseguridad y servicios inteligencia de negocio, además de consultoría en agentes IA.

Sobre Q2BSTUDIO

Somos una empresa de desarrollo especializada en aplicaciones a medida y software a medida, con soluciones de inteligencia artificial, ciberseguridad y pentesting, servicios cloud aws y azure, automatización de procesos, data analytics y power bi. Desde un MVP con FastAPI y React hasta plataformas escalables listas para millones de usuarios, trabajamos contigo de forma ágil y transparente para acelerar el time to market y maximizar el retorno.

Enhorabuena por tu primera app full stack CRUD. Lo que has aprendido es la base del desarrollo web moderno. Sigue practicando y construyendo. Y si buscas un partner tecnológico, estaremos encantados de ayudarte a transformar tus ideas en producto digital.

Fin del artículo, inicio de la diversión
Construyendo software juntos

Dando vida a tus ideas desde 2008

Diseñamos aplicaciones móviles y de escritorio innovadoras que cumplen con tus requisitos específicos y mejoran la eficiencia operativa.
Más info
Cuéntanos tu visión
Sea cual sea el alcance, podemos convertir tu idea en realidad. Envíanosla y charlemos sobre tu proyecto o una colaboración futura.
Contáctanos
artículos destacados
Live Chat
Enviado correctamente.

Gracias por confiar en Q2BStudio