Habiendo pasado mi carrera escribiendo software y a menudo lidiando enormemente con el diseño, desde que me uní al equipo de Adalo hace unos meses, he quedado prácticamente asombrado por lo fácil que es crear y conectar interfaces de usuario usando el constructor de aplicaciones Adalo. Adalo es un constructor de aplicaciones sin código para aplicaciones web impulsadas por bases de datos y aplicaciones nativas de iOS y Android, una versión en las tres plataformas, publicada en Apple App Store y Google Play. Siendo honesto, siempre había pensado que los constructores de aplicaciones sin código estaban limitados a crear aplicaciones de estilo CRUD (crear, recuperar, actualizar, eliminar) y paneles de control bastante simplistas.
Con la Navidad acercándose rápidamente, y siendo el tipo de nerd al que le gusta automatizar cosas sin razón particular, hace unos días comencé a preguntarme si sería posible crear una aplicación Adalo que pudiera controlar las luces del árbol de Navidad de mi familia. Ya están conectadas con un enchufe inteligente y nuestro dispositivo Alexa de la cocina y, por lo tanto, se pueden encender y apagar con el comando "Alexa, enciende el árbol de Navidad", pero ¿sabes qué es mejor que una integración de automatización del hogar? Dos. A continuación se presenta un resumen de mi búsqueda para crear e iniciar una aplicación móvil de gestión de luces del árbol de Navidad usando Adalo, cinta adhesiva y mal criterio.
La aplicación estará disponible durante unos días a partir del lunes 16 de diciembre, y puede estar periódicamente sin conexión debido a que no estoy en casa (tengo miedo del fuego), mi esposa amenazando con estrangularme por hacer esto público, o los problemas técnicos obvios que puedan surgir. Consúltalo en https://xmas.wjgilmore.com.
Presentación de la aplicación
La aplicación se llama creativamente Adalo XMAS Tree App. Consiste en algo de tema, dos botones para alternar las luces de Navidad, y una transmisión en vivo de YouTube para que puedas ver la acción en tiempo real. Pero esos botones, oh esos botones son prácticamente irresistibles. Simplemente no puedes evitar presionarlos y ver ese árbol iluminarse en respuesta o imaginar a mi esposa gimiendo después de verlo apagarse una vez más.
Anoche estábamos poniéndonos al día con la serie de Apple Silo (temporada 2, mírala, es increíble), y me encontré en una lucha a muerte con algún intruso digital desconocido. Creo que sé quién fue (¡Allison, no creas que no sé que fuiste tú!), pero de todas formas el terrorista del árbol lo apagaría. Y yo lo volvería a encender. Momentos después, el Grinch estaba de vuelta y las luces se apagaban de nuevo. Y yo nuevamente luchaba valientemente, iluminando la sala de estar una vez más. Dicen que los héroes no nacen sino que se forjan en oropel, y soy la prueba viviente de ello.
Apuesto a que estás salivando ante la idea de presionar esos botones. Bueno, adelante. Ve a https://xmas.wjgilmore.com y presiónalos. ADVERTENCIA: No tengo idea de cuánto tiempo va a estar disponible esto antes de que sea desconectado por mi ISP, un error de programación, o francamente mi esposa.

Por qué Adalo funciona para aplicaciones del hogar inteligente
Construir una aplicación de control de IoT puede sonar complejo, pero el constructor visual de Adalo lo hace sorprendentemente sencillo. La plataforma se encarga del trabajo pesado—compilación de aplicaciones nativas, integraciones de API y gestión de bases de datos—mientras te enfocas en las partes divertidas como diseñar botones que controlen tu árbol de Navidad. Con más de 3 millones de aplicaciones creadas en la plataforma, hay un historial comprobado de proyectos que van desde utilidades simples hasta aplicaciones comerciales complejas.
Lo que hace que Adalo sea particularmente adecuado para este tipo de proyecto es la combinación de integración fácil de API y la capacidad de publicar directamente en tiendas de aplicaciones. No estás construyendo un envoltorio web que se sienta lento en dispositivos móviles, estás creando una aplicación nativa verdadera que responde instantáneamente cuando alguien al otro lado del mundo decide meterse con tus decoraciones navideñas.
Comunicándose con el enchufe inteligente
Porque en 2026 no podemos molestarnos en agacharnos para enchufar y desenchufar una cadena de luces, usé un enchufe inteligente TP-Link KP115 para controlar las luces a través de Alexa. Este es un proceso bastante sencillo, pero según mi conocimiento no hay una forma oficial de interactuar con el enchufe fuera de Alexa y la horrible aplicación del fabricante. ¡GitHub al rescate! Como era de esperar, un programador amable invirtió la ingeniería del protocolo de comunicación del enchufe y lo empaquetó en un conveniente paquete de Python llamado python-kasa. Para instalar python-kasa ejecuta:
pip install python-kasa
Una vez instalado, puedes comenzar a interrogar tu red local de dispositivos compatibles usando el discover comando:
kasa discover
Entonces, no solo puedes identificar fácilmente la dirección IP asignada de cada dispositivo, sino que también puedes determinar si está encendido, cuánto tiempo ha estado en estado encendido o apagado, y cuánta energía ha consumido tanto para el mes actual como desde el último reinicio. ¡Bastante genial!
Una vez que conoces la dirección IP del dispositivo, es fácil encenderlo y apagarlo:
kasa --host 192.168.1.100 on kasa --host 192.168.1.100 off
Creando una API
Mi objetivo final era controlar este enchufe a través de una aplicación móvil Adalo que podría ser concebiblemente accesible desde cualquier parte del mundo, incluido el Polo Norte. Esto significa abrir una conexión a Internet desde mi red doméstica al mundo exterior. Déjame ser claro: hay formas correctas de hacer esto, y hay formas incorrectas. La forma que estoy a punto de mostrarte es muy, muy incorrecta, y mi proveedor de servicios de Internet del hogar probablemente desconectará nuestra conexión por hacerlo de esta manera.
La versión más simple de esta API necesita, según mi estimación, tres puntos finales: estado, encender y apagar. El punto final de estado nos dice si el enchufe está encendido o apagado, mientras que los puntos finales de encender y apagar se explican por sí solos. Usé Flask para crear la API, y la encontré muy fácil de usar. Para crear un punto final, solo defines el URI de la ruta y luego el método que sigue inmediatamente se ejecuta cuando se solicita ese punto final.
Créalo o no, esto es suficiente para crear una API de Flask funcional:
from flask import Flask app = Flask(__name__)@app.route('/status')
Guarda este archivo como status.py o lo que sea y luego inicia el servidor Flask así:
flask —app status run
Debido a que las rutas de Flask son solicitudes GET por defecto, puedes simplemente abrir tu navegador e ir a http://127.0.0.1:5000/status para probarlo. Suponiendo que no haya errores de sintaxis, deberías ver la cadena hello mostrada en el navegador.
En el caso de mi proyecto, necesitaba que los puntos finales de la API ejecutaran comandos de python-kasa, y así usé el módulo subprocess de Python para ejecutar comandos de shell. Para los propósitos de este proyecto, puedo permitirme jugar las cosas un poco rápido y sin cuidado, sin embargo, si alguna vez intentas algo similar y necesitas pasar parámetros al comando de shell entonces es muy importante que valides los datos antes de hacerlo. Aquí está el script completo de Flask utilizado para este proyecto:
from flask import Flask import subprocessapp = Flask(__name__)
@app.route('/status')
@app.route('/on')
@app.route('/off')
Comunicándose con el mundo exterior
Probablemente notaste que la API de Flask se ejecuta en localhost, lo que significa que no es accesible para el mundo exterior. Para hacer que esta API sea accesible en otros lugares, uso un servicio llamado ngrok. ngrok ha existido durante todo lo que puedo recordar, y en resumen expondrá un servidor de desarrollo local a internet (entre muchas otras cosas). Usando ngrok, podemos exponer el puerto 5000 de mi servidor local a un subdominio ngrok.app tan fácil como ejecutar este comando:
ngrok http 5000
¡Ahora puedo ir a mi punto final de ngrok desde cualquier red y reenviará las solicitudes hacia y desde mi API!
Redirigiendo las solicitudes a través de DreamFactory
Por razones de seguridad y flexibilidad, enruté el endpoint de ngrok a través de DreamFactory. DreamFactory es mejor conocido como un contenedor de base de datos capaz de exponer rápidamente una API REST de nivel empresarial, sin embargo puede hacer todo tipo de cosas interesantes como extender las capacidades de las API existentes. Utilicé el conector de servicio con scripts de DreamFactory porque pensé que podría ser divertido integrar eventualmente otras capacidades en la aplicación, como la temperatura actual en el Polo Norte. Hacer esto es increíblemente fácil con DreamFactory porque simplemente puedo agregar nuevos endpoints a mi servicio con scripts.
El conector de servicios con scripts de DreamFactory admite los lenguajes PHP, Python y NodeJS, y como estoy más familiarizado con la API basada en PHP de la plataforma, elegí eso:
$api = $platform[‘api’]; $get = $api->get; $post = $api->post;$api->get('/status', function() {https://your-ngrok-url.ngrok.app/status');
$api->get('/on', function() {https://your-ngrok-url.ngrok.app/on');
$api->get('/off', function() {https://your-ngrok-url.ngrok.app/off');
$api->get('/temperature', function() {
Solo para propósitos ilustrativos, he extendido lo que se expone a través de la API de Flask agregando un /temperature endpoint que cuando se solicita devolverá "Freezing".
Después de guardar estos cambios, agregué control de acceso basado en roles a la API de DreamFactory y luego generé una clave de API. Los endpoints de la API de DreamFactory ahora solo son accesibles proporcionando la clave de API que se proporciona a través de un encabezado HTTP seguro.
Integración de la API y la aplicación Adalo
Una de mis características favoritas del generador de Adalo es lo fácil que es vincular eventos a acciones del usuario. Por ejemplo, al hacer clic en el botón "Encender árbol" es necesario realizar una llamada a la API al /on endpoint. Esto se logra tan fácilmente como agregar una "acción" al botón e indicar qué tipo de evento debe ocurrir para que se ejecute esa acción. Además, puede definir múltiples acciones como se muestra en esta captura de pantalla (tomada de la aplicación real):

La llamada a la API se envía al endpoint de DreamFactory mencionado anteriormente. Nuevamente, la llamada se asegura pasando una clave de API a través del encabezado HTTP. Definir esta llamada se logra a través de un asistente web simple, uno de cuyos pasos se muestra en la siguiente captura de pantalla:

Este enfoque visual para la integración de API es lo que hace que la plataforma de Adalo se sienta tan accesible. No está escribiendo solicitudes de obtención o depurando errores CORS, está haciendo clic a través de un asistente que maneja la complejidad técnica. Las mejoras de velocidad de 3-4x desde la revisión de infraestructura de Adalo 3.0 significan que estas llamadas a la API se ejecutan rápidamente, manteniendo la aplicación receptiva incluso al controlar hardware al otro lado del mundo.
Conteo de la frecuencia de alternancia de luces
Pensé que sería divertido realizar un seguimiento de la cantidad de veces que los usuarios han encendido y apagado las luces. Podría hacer esto dentro de la API de Flask local usando SQLite, pero pensé que tenía sentido mantener este recuento más cerca de la aplicación, así que usé la función Colecciones de Adalo en su lugar.
Creé una única colección llamada counts que consta de cuatro campos: ID (la usual clave primaria de auto-incremento), name (que almacena las cadenas on y off), y las marcas de tiempo usuales. Las advertencias habituales se aplican aquí, probablemente podría haber configurado esto de manera un poco más eficiente pero simplemente estamos abriendo camino a través del proyecto. Aquí hay un ejemplo de algunos registros almacenados en la tabla:

Algo digno de notar: los planes pagos de Adalo ahora incluyen registros de base de datos ilimitados, lo que significa que no tengo que preocuparme de que este tonto proyecto navideño alcance ningún límite de almacenamiento. Ya sea rastreando cientos de alternancia de luces o escalando a millones de interacciones de usuarios, la plataforma lo maneja sin cargos adicionales o límites de registros.
Elaboración de gráficos de resultados
Mi amigo Nic de DreamFactory sugirió crear un gráfico que represente la frecuencia de alternancia. No tenía ganas de escribir código personalizado para implementar esto, sin embargo es trivial exportar datos de una colección de Adalo, así que lo hice y lo cargué junto con un gráfico de ejemplo en ChatGPT:

Sí, siempre soy educado cuando hablo con inteligencia artificial estos días. Por mi parte, doy la bienvenida y aprecio a nuestros señores robot. Sin embargo, no me gustó cómo resultó el gráfico, así que después de algunos intentos más, le pedí que creara un gráfico de pastel en su lugar:

Configuración de la transmisión en vivo de YouTube
Configurar la transmisión en vivo de YouTube fue muy sencillo; usé el componente del mercado de YouTubede Adalo, pegué la URL de la transmisión en vivo, y simplemente funcionó. Además, puedo ver el estado de la transmisión en vivo usando esta divertida interfaz de YouTube Studio:

El ecosistema de componentes del mercado es una de esas características que ahorra horas de tiempo de desarrollo. En lugar de descubrir la API de inserción de YouTube y manejar el tamaño responsive en todos los dispositivos, simplemente arrastra, suelta y configura. El componente se encarga del resto, y como Adalo compila a código nativo, la reproducción de video funciona sin problemas tanto en iOS como en Android.
Creación del icono de la aplicación
No tengo ninguna habilidad de diseño en absoluto, así que simplemente me basé en DALL-E para generar uno para mí. Usé el mensaje "Por favor, crea un icono de 1024 x 1024 px para una aplicación móvil usada para controlar las luces del árbol de Navidad". DALL-E ignoró las dimensiones y creó las dos opciones que se encuentran en la captura de pantalla:

En aras del tiempo, seleccioné el primer icono que creó, lo descargué a mi Mac, y luego usé la característica poco conocida de macOS para eliminar el fondo y eliminar el gradiente de fondo:

Ada, el constructor de IA de Adalo, te permite describir lo que deseas y genera tu app. Magic Start crea fundaciones de aplicaciones completas a partir de una descripción, mientras que Magic Add agrega funciones mediante lenguaje natural.
Esta combinación de activos generados por IA y el constructor visual de Adalo representa el enfoque moderno para el desarrollo de aplicaciones. No necesitas ser diseñador ni desarrollador para crear algo funcional y divertido. Las características de IA de la plataforma Builder llevarán esto aún más lejos—a principios de 2026 promete creación de aplicaciones basada en indicaciones donde puedes describir lo que quieres y que la plataforma genere pantallas, lógica y estructuras de base de datos automáticamente a través de características como Magic Start y Magic Add.
Publicación y rendimiento
Un aspecto de este proyecto que merece mención es lo sin problemas que Adalo maneja el camino desde la idea hasta la aplicación publicada. La plataforma publica directamente en la Apple App Store y Google Play Store desde una única base de código. Esta es genuinamente la parte más difícil de lanzar una aplicación, tratar con certificados, perfiles de aprovisionamiento y directrices de tienda, y Adalo lo maneja automáticamente.
El rendimiento de la aplicación ha sido sólido a lo largo de este experimento. Desde la revisión de infraestructura de Adalo 3.0 a finales de 2025, la plataforma funciona 3-4 veces más rápidas que antes, con infraestructura modular que se escala con las necesidades de tu aplicación. Para un tonto proyecto navideño esto podría parecer excesivo, pero significa que los clics de botón se registran instantáneamente y la transmisión en vivo se carga sin retrasos, incluso cuando varias personas están compitiendo por las luces del árbol simultáneamente.
El precio de Adalo también hace que proyectos como este sean accesibles. A partir de $36/mes con uso ilimitado y sin límites de registros, puedes experimentar libremente sin preocuparte por sorpresas en la factura por cargos inesperados. Compáralo con alternativas como Bubble (a partir de $69/mes con Workload Units basadas en uso y límites de registros) o Glide (que ni siquiera admite publicación en la App Store), y la propuesta de valor se vuelve clara.
Conclusión
Este fue un proyecto muy divertido que hizo reír a mis hijos y vecinos, y exasperó a mi esposa sin límite. A veces los mejores proyectos son aquellos que no tienen otro propósito real que no sea darse algunos risas. Espero que para cuando leas esto mi casa no se haya quemado.
Quizás en una publicación posterior documentaré algunas de las otras cosas divertidas que surgieron durante el desarrollo, como Laura Coronel, instructora de Treehouse escribir un script automatizado para interactuar con la interfaz de usuario y alternar las luces del árbol 100 veces en un minuto. El hecho de que la infraestructura de Adalo manejara ese tipo de interacción rápida sin sudar la gota gorda habla sobre la confiabilidad de la plataforma, incluso para proyectos que existen únicamente para molestar a tu cónyuge durante las vacaciones.
Preguntas frecuentes
¿Por qué elegir Adalo sobre otras soluciones de construcción de aplicaciones?
Adalo es un constructor de aplicaciones impulsado por IA que crea verdaderas aplicaciones nativas para iOS y Android desde una única base de código. A diferencia de los envoltorios web, se compila en código nativo y se publica directamente en la App Store de Apple y Google Play Store, manejando automáticamente la parte más difícil del lanzamiento de una aplicación. Con registros de base de datos ilimitados en planes pagos y sin cargos basados en uso, puedes construir y escalar sin costos inesperados.
¿Cuál es la forma más rápida de construir y publicar una aplicación en la App Store?
La interfaz de arrastrar y soltar de Adalo y la construcción asistida por IA te permiten pasar de la idea a la aplicación publicada en días en lugar de meses. La plataforma maneja el complejo proceso de envío de la App Store —certificados, perfiles de aprovisionamiento y directrices de la tienda— para que puedas enfocarte en las características de tu aplicación en lugar de luchar contra los requisitos de Apple.
¿Puedo integrar fácilmente APIs externas y dispositivos domésticos inteligentes con Adalo?
Sí, Adalo facilita vincular llamadas de API a acciones del usuario como clics de botón a través de un asistente web directo. Puedes conectarte a servicios como DreamFactory, APIs personalizadas de Flask o cualquier endpoint REST con encabezados HTTP seguros, sin necesidad de código.
¿Cómo agrego acciones de botón e interacciones del usuario en Adalo?
Agregar acciones de botón es increíblemente fácil: simplemente añades una "acción" a cualquier botón y especificas qué evento la activa. Puedes definir múltiples acciones por botón, como hacer una llamada de API y actualizar un registro de base de datos simultáneamente. Esto hace que crear aplicaciones interactivas con funcionalidad del mundo real sea directo incluso sin experiencia en código.
¿Puedo almacenar y rastrear datos en mi aplicación Adalo?
Sí, Adalo incluye una característica de Colecciones integrada que te permite crear tablas de base de datos para almacenar y rastrear datos. Puedes configurar fácilmente colecciones con campos personalizados, marcas de tiempo y relaciones, luego exportar datos cuando sea necesario. Los planes pagos incluyen registros de base de datos ilimitados, por lo que nunca alcanzarás límites de almacenamiento.
¿Cómo incrusto videos de YouTube o transmisiones en vivo en mi aplicación Adalo?
Adalo ofrece componentes de marketplace incluyendo un componente de YouTube que hace que incrustar videos sea increíblemente simple. Solo añades el componente de marketplace de YouTube a tu pantalla, pegas la URL de tu video o transmisión en vivo, y funciona inmediatamente, sin necesidad de código personalizado.
¿Necesito habilidades de diseño para crear una aplicación de aspecto profesional con Adalo?
No, no necesitas habilidades de diseño para crear una aplicación con buen aspecto. La plataforma incluye capacidades de tematización y componentes preconstruidos que te ayudan a crear interfaces pulidas. También puedes usar herramientas de IA como DALL-E para generar iconos y gráficos de aplicación personalizados.
¿Cuánto cuesta construir una aplicación de control de IoT con Adalo?
Los planes pagos de Adalo comienzan en $36/mes con uso ilimitado y sin límites de registros. Esto incluye la capacidad de publicar en la App Store de Apple y Google Play Store. Compáralo con alternativas como Bubble ($69/mes con cargos basados en uso) o FlutterFlow ($70/mes por usuario, más costos de base de datos separados).
¿Puede Adalo manejar alto tráfico e interacciones rápidas de usuarios?
Sí, desde la revisión de infraestructura de Adalo 3.0 a finales de 2025, la plataforma funciona 3-4 veces más rápido con una infraestructura modular que se escala para servir aplicaciones con millones de usuarios activos mensuales. La arquitectura mantiene el rendimiento incluso bajo interacciones rápidas.
¿Qué características de IA ofrece Adalo para la construcción de aplicaciones?
Adalo actualmente ofrece Magic Start (genera fundaciones de aplicaciones completas a partir de descripciones) y Magic Add (añade características a partir de solicitudes en lenguaje natural). El Builder de características de IA, disponible a principios de 2026, permitirá la creación y edición completa de aplicaciones basada en indicaciones durante todo el proceso de desarrollo.
Construye tu aplicación rápidamente con una de nuestras plantillas de aplicación prediseñadas
Comienza a construir sin código