Aplicaciones CLI Interactivas con Node.js: Guía para Principiantes

Guía práctica para crear una CLI con Node.js que recopila ventas inmobiliarias: preguntas interactivas, validación de datos, manejo de JSON y resumen previo a guardar.

4 sept 2025 • 5 min read • Q2BSTUDIO Team

Inteligencia-Artificial-

Introduccion

Las interfaces de linea de comandos CLI son herramientas potentes que permiten interactuar con aplicaciones mediante comandos de texto. Aunque puedan parecer complejas al principio, crear CLIs con Node.js es mas sencillo de lo que imaginas y extremadamente util para automatizar tareas, recolectar datos o construir herramientas para desarrolladores.

En esta guia practica construiremos un recopilador de datos de ventas inmobiliarias un CLI interactivo que recoge informacion de ventas de apartamentos y la guarda en un archivo JSON. Con este ejemplo aprenderas los conceptos esenciales de desarrollo de CLIs mientras creas algo realmente util.

Que aprenderas

Crear preguntas interactivas para entrada de usuario

Tecnicas de validacion de entradas

Operaciones de archivos y gestion de datos JSON

Manejo de errores en aplicaciones CLI

Estructuracion de codigo mantenible

Requisitos previos

Conocimientos basicos de JavaScript

Node.js instalado en tu equipo

Un editor de texto o IDE

Puesta en marcha

Nuestra aplicacion CLI hara lo siguiente

1 Solicitar detalles del apartamento direccion, metros, precio y mas

2 Recopilar informacion de vendedor y comprador

3 Validar todas las entradas

4 Mostrar un resumen para confirmacion

5 Guardar los datos en un archivo JSON

Preparacion del proyecto

Crea un directorio y inicializa el proyecto con los comandos mkdir real-estate-cli; cd real-estate-cli; npm init -y. Luego crea el archivo principal apartment-sales.js.

Conceptos clave

Entrada interactiva con el modulo readline de Node.js. Este modulo permite leer preguntas y respuestas en consola y es ideal para construir flujos conversacionales.

Promesas y async await. Envolver las preguntas de readline en una Promesa permite usar async await y escribir un flujo de preguntas lineal y legible.

Construyendo la aplicacion

1 Validacion. Asegura datos de calidad con funciones que validen numeros positivos para precios y superficies, correos electronicos con formato valido y telefonos con una cantidad minima de digitos. Las funciones deben lanzar errores claros cuando la entrada no cumpla los criterios.

2 Recopilacion de datos. Diseña una funcion principal que guie al usuario por secciones Detalles del apartamento, Detalles de la venta, Vendedor y Comprador. Convierte a tipos adecuados por ejemplo parseFloat para precios y metros y genera metadatos como fecha de creacion y un id unico basado en tiempo.

3 Gestion de archivo JSON. Lee el archivo si existe para acumular registros anteriores, agrega la nueva venta al arreglo y escribe de vuelta en formato legible con sangria. Maneja excepciones de lectura o escritura para informar errores sin interrumpir la experiencia.

4 Resumen previo al guardado. Muestra un resumen claro con metros y ciudad, precio formateado, vendedor, comprador y fecha de la venta. Solicita confirmacion al usuario antes de persistir la informacion.

5 Flujo principal. Orquesta todo el proceso ejecutar preguntas, mostrar resumen, confirmar guardado, persistir y cerrar la interfaz readline pase lo que pase usando finally para liberar recursos.

Ejecucion

Para ejecutar la aplicacion usa el comando node apartment-sales.js y sigue las instrucciones en pantalla. La app validara entradas, mostrara el resumen y guardara los datos.

Ejemplo de salida JSON explicada

El archivo apartment-sales.json contiene un arreglo de ventas. Cada venta incluye un objeto apartment con direccion, ciudad, codigo postal, area en metros cuadrados, numero de habitaciones y dormitorios, planta y banderas como ascensor, balcon y parking; un objeto sale con precio numerico, fecha de venta, tipo de venta y porcentaje de comision; objetos seller y buyer con nombre, apellidos, email, telefono y direccion; y metadatos createdAt en formato ISO e id unico.

Conclusiones clave

Entrada interactiva usando readline

Validacion de datos para garantizar calidad

Manejo de errores para casos limite y fallos de I O

Operaciones de archivo con lectura y escritura de JSON

Organizacion modular y mantenible del codigo

Mejoras recomendadas

Colores y estilos con librerias como chalk

Barras de progreso para tareas largas

Edicion y busqueda de registros existentes

Analitica basica y estadisticas precios medios por ciudad o por metros

Internacionalizacion y configuraciones externas

Sobre Q2BSTUDIO y como podemos ayudarte

En Q2BSTUDIO somos una empresa de desarrollo de software con un enfoque integral en aplicaciones a medida y software a medida combinando buenas practicas de ingenieria con un fuerte conocimiento de negocio. Diseñamos CLIs productivas y herramientas de automatizacion que aceleran procesos internos y mejoran la calidad de los datos. Si buscas un socio para crear soluciones robustas y multiplataforma te invitamos a conocer nuestro enfoque en desarrollo de aplicaciones y software a medida.

Nuestro equipo es especialista en inteligencia artificial y en llevar ia para empresas a proyectos reales mediante agentes IA, integraciones con servicios cloud aws y azure, despliegues seguros y escalables, y cuadros de mando con power bi dentro de nuestros servicios inteligencia de negocio. Tambien reforzamos tu postura de ciberseguridad con pruebas de intrusion y controles continuos y te ayudamos a optimizar costes en la nube.

Si tu objetivo es impulsar la eficiencia operativa con automatizacion y reducir errores humanos, podemos adaptar esta CLI a tus procesos empresariales y conectarla con ERP, CRM o colas de mensajeria. Descubre como estandarizamos y automatizamos flujos con nuestro servicio de automatizacion de procesos.

Palabras clave que trabajamos aplicaciones a medida, software a medida, inteligencia artificial, ia para empresas, agentes IA, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, power bi.

Cierre

Construir aplicaciones CLI con Node.js es practico y gratificante. Con los patrones descritos podras crear herramientas de despliegue, procesadores de datos o cuestionarios interactivos reutilizando validacion, manejo de errores y persistencia. Y si buscas acelerar resultados con calidad empresarial Q2BSTUDIO puede acompañarte desde la ideacion hasta la puesta en produccion con un enfoque seguro, escalable y orientado a negocio.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.

Live Chat