00:00:00Bien, ¿cuántas veces has reconstruido exactamente el mismo backend?
00:00:04CRUD, autenticación, panel de administración, carga de archivos.
00:00:07Muchas veces, lo que parece construcción es simplemente reconstrucción.
00:00:10¿Y si pudieras apuntar una herramienta a tu base de datos SQL y obtener un backend completo?
00:00:15Eso es Directus, una API en tiempo real y un panel de control para gestionar contenido SQL.
00:00:21Muchos desarrolladores se están dando cuenta de que lo han estado haciendo de la forma difícil.
00:00:25Permíteme mostrarte cómo funciona todo esto en solo unos minutos.
00:00:30[MÚSICA]
00:00:33El mayor problema del backend para la mayoría no es la complejidad, es la repetición.
00:00:38No resolvemos problemas nuevos, estamos conectando el mismo código una y otra vez,
00:00:42y eso simplemente consume nuestro tiempo.
00:00:44Directus elimina todo eso.
00:00:46Se conecta directamente a tu base de datos Postgres, MySQL u Oracle.
00:00:50Sin migraciones, sin reconstruir todo tu esquema en otro lugar.
00:00:53Obtenemos instantáneamente APIs REST y GraphQL,
00:00:57permisos a nivel de campo, suscripciones en tiempo real,
00:01:01flujos y automatizaciones, manejo de archivos y una interfaz limpia.
00:01:05Ahora, lo mejor es que tu base de datos permanece intacta.
00:01:08No es una capa duplicada.
00:01:10Eso importa mucho más de lo que parece.
00:01:12Ahora, déjame mostrarte.
00:01:13Si te gustan las herramientas de código abierto y los consejos para programar rápido,
00:01:17asegúrate de suscribirte.
00:01:18Tenemos videos nuevos constantemente.
00:01:20Bien, empezando desde cero absoluto con una instalación limpia de Directus,
00:01:24sin tablas en la base de datos, nada precargado.
00:01:27Solo un lienzo en blanco después de haber creado mi cuenta aquí.
00:01:32Y en lugar de conectarme a algo que ya existe,
00:01:34voy a crear una app de gestión de pedidos en solo un minuto.
00:01:39Primero, creo una colección y la llamaré "Orders", así de simple.
00:01:45Eso es todo.
00:01:45Ahora la app tiene un lugar para guardar datos, y podemos añadir más detalles.
00:01:51Voy a seleccionar y sobrescribir los que necesitamos aquí,
00:01:54como el cliente, la fecha y todas esas cosas.
00:01:58Luego puedo añadir manualmente cualquier otro campo
00:02:00que creamos que necesitaremos para algo como esto.
00:02:03Podría poner nombre del cliente, email, producto como un desplegable,
00:02:08donde puedo añadir una clave y un valor.
00:02:10Puedo hacer lo mismo para el monto y el estado.
00:02:13Cada campo añade más detalle sobre los datos que vamos a almacenar.
00:02:16Y fíjate en lo que falta aquí.
00:02:18Bueno, es el SQL.
00:02:19No hay SQL.
00:02:20No hay migraciones.
00:02:22No hay que cambiar de pestaña para escribir un archivo de esquema.
00:02:25Se guarda aquí mismo en Directus inmediatamente.
00:02:28Ahora puedo ir a la vista de contenido y empezar a añadir pedidos.
00:02:32Añadiré el primer pedido aquí, con una cuenta de prueba.
00:02:35Añadiré otro más.
00:02:36Y luego podemos añadir un tercero, ¿verdad?
00:02:39Ya tenemos tres pedidos diferentes en el sistema.
00:02:42Ahora tengo datos reales con los que podríamos empezar a jugar.
00:02:45Pero ahora mismo está todo abierto, lo que significa que cualquiera podría hacer de todo.
00:02:49Así que vamos a arreglar eso.
00:02:50¿Cómo lo arreglamos?
00:02:51Bueno, con permisos.
00:02:53Así que voy al rol público.
00:02:55Voy a buscar la colección de pedidos que creamos.
00:02:58Podemos activar la lectura.
00:03:00Y me aseguraré de que todo lo demás esté desactivado.
00:03:03Crear, actualizar, eliminar.
00:03:05Todo eso fuera.
00:03:06Ahora es más controlado y seguro para lo que queremos.
00:03:10Bien, aquí es donde se pone realmente interesante
00:03:12porque podemos automatizar y crear flujos alrededor de esto.
00:03:16Voy a ir por aquí y crear un nuevo flujo.
00:03:19Le pondré un nombre muy sencillo, ¿qué es esto?
00:03:22Notificar sobre un nuevo pedido.
00:03:24Nombre simple, cumple su propósito.
00:03:26Y seleccionaré todo de los ítems en la colección que llamamos "orders".
00:03:31Ahora puedo construir un disparador.
00:03:33Y para el disparador, me engancho a cuando se crea un nuevo ítem,
00:03:37específicamente en esa colección de pedidos.
00:03:39Así que cada vez que entre un nuevo pedido, algo va a suceder.
00:03:43Voy a añadir una operación.
00:03:44Vamos a enviar un correo electrónico.
00:03:46Escribiré un asunto.
00:03:47Añadiré mi correo a esto.
00:03:49Y en el cuerpo, voy a extraer los datos del pedido.
00:03:52Así que cuando entre un pedido, enviará esos datos por correo.
00:03:56Ahora puedo guardar esta operación, guardamos el flujo y listo.
00:04:00Bien, ahora mira esto.
00:04:02Voy a volver.
00:04:03En mi archivo Docker Compose inicial, añadí Mailpit para probar esto.
00:04:07Es una forma súper sencilla de probar la función de envío de correos.
00:04:11Cuando hago un pedido más, igual que antes, nada sofisticado,
00:04:14pero esta vez algo es diferente.
00:04:16Esto dispara el flujo automáticamente y sale un correo con los detalles.
00:04:20No hay lógica de backend aquí.
00:04:22No hay que cablear cosas entre sí.
00:04:25Esto empezó como nada: sin tablas, sin backend, sin estructura real.
00:04:30Y en solo unos minutos, es una app funcional con permisos de datos y,
00:04:33sí, automatización, que era la parte genial.
00:04:35Y esto es lo que hace que Directus se sienta muy bien.
00:04:38Es como combinar lógica visual de base de datos con algo como N8N o Zapier,
00:04:43pero en realidad no compite con ellos.
00:04:45¿Qué es Directus exactamente?
00:04:47Es una plataforma de datos de código abierto que se asienta sobre tu base de datos SQL.
00:04:52No se sienta al lado.
00:04:53Se asienta encima.
00:04:55Ese modelo de "primero la base de datos" es la clave, ¿verdad?
00:04:58Entonces, ¿qué significa esto realmente?
00:04:59Bueno, significa varias cosas para nosotros.
00:05:01Significa que no hay dependencia forzada o "lock-in".
00:05:03El SQL completo sigue ahí y funciona con sistemas heredados.
00:05:07Por eso se usa para backends de SaaS, herramientas internas, CMS headless,
00:05:13o agentes de IA con datos controlados.
00:05:15Si intentas modernizar un sistema viejo sin reescribirlo todo.
00:05:19Tu base de datos es el motor real aquí.
00:05:21Directus solo le da un panel de control y mandos.
00:05:24A primera vista, si has usado Strapi, Payload o Hasura,
00:05:28Directus se verá similar, pero resuelven problemas distintos.
00:05:33Strapi y Payload se centran primero en el código.
00:05:36Defines los esquemas en código y luego reconstruyes tu estructura allí.
00:05:40Sí, eso funciona, pero es trabajo extra.
00:05:42Directus cambia las cosas con algunos ajustes.
00:05:45Tu esquema ya existe, así que en lugar de recrearlo, solo lo conectas.
00:05:50Un flujo de trabajo completamente distinto.
00:05:52Hasura es genial para GraphQL rápido, pero Directus va más allá.
00:05:58Obtienes las APIs.
00:05:59Sí, las tenemos, pero también espacio de administración, permisos, archivos y automatización.
00:06:05Y aquí está lo que más le importa a los devs: los permisos.
00:06:10No hablo solo de reglas simples.
00:06:12Hablamos de control real sin necesidad de plugins.
00:06:15Si tu problema es "necesito un backend", tienes opciones.
00:06:18Si tu problema es "no quiero reconstruir mi backend otra vez", esto es diferente.
00:06:23Obviamente, ninguna herramienta es perfecta, pero esta es muy buena.
00:06:26¿Qué me pareció súper genial?
00:06:28Bueno, los permisos simplemente funcionan.
00:06:29Eso es fantástico.
00:06:30Los flujos eliminan mucho del trabajo monótono que hacemos.
00:06:32La interfaz es muy limpia y rápida, y es fácil de desplegar con Docker.
00:06:37Además de todo eso, escala realmente bien.
00:06:39Pero con todo lo bueno, por supuesto, siempre hay desventajas.
00:06:43Las concesiones serían que los flujos avanzados pueden llevar tiempo.
00:06:46Si has usado N8N o algo parecido, ya lo entiendes.
00:06:49La documentación no siempre está completa.
00:06:51Y si lo alojas tú mismo, debes gestionar la infraestructura.
00:06:54Además, las configuraciones complejas pueden volverse liosas localmente.
00:06:57Directus elimina un tipo muy específico de trabajo repetitivo de backend.
00:07:00Entonces, ¿vale la pena Directus?
00:07:02Para muchos de nosotros, probablemente sí.
00:07:03Depende de lo que hagamos, especialmente si ya tienes datos SQL, o si estás
00:07:07cansado de reconstruir estos backends básicos una y otra vez; entonces sí,
00:07:11esto aporta un valor real.
00:07:13Ahorra tiempo, reduce el mantenimiento y mantienes el control de los datos.
00:07:17Nuevamente, es de código abierto.
00:07:19Nosotros controlamos eso.
00:07:20¿Cuándo no usarías esto?
00:07:22Si estás en un monorepo gigante con un TypeScript estricto, probablemente no.
00:07:26Si no tienes una base de datos existente, probablemente tampoco.
00:07:29Y si quieres todo definido en código desde el principio, algo como Payload
00:07:33tendría mucho más sentido.
00:07:34Pero si estás pensando ahora mismo: "¿esto puede sentarse sobre mi base de datos?"
00:07:38Sí, puede.
00:07:39Así que podría valer la pena probarlo.
00:07:41Si te gustan las herramientas de código abierto y consejos como este, suscríbete al
00:07:45canal de Better Stack.
00:07:46Nos vemos en otro video.