Construyendo una CLI de Calculadora de IMC con TypeScript — Tipos, Funciones y Vitest

<meta content=Construye una calculadora de IMC como CLI con TypeScript y Vitest. Tutorial práctico para aprender desarrollo y testing de herramientas de terminal.>

23 may 2026 • 3 min read • Q2BSTUDIO Team

Construye una CLI de calculadora de IMC con TypeScript y Vitest

Construir herramientas de línea de comandos con TypeScript es un excelente ejercicio para dominar el tipado estático, el manejo de flujos asíncronos y las pruebas unitarias. Un clásico como el cálculo del Índice de Masa Corporal permite explorar conceptos fundamentales sin perderse en la complejidad del dominio. Lo interesante no es el algoritmo en sí, sino cómo se estructura el código, se definen los tipos y se validan los límites del comportamiento esperado.

En un proyecto CLI real, la separación de responsabilidades marca la diferencia. Conviene aislar la lógica de cálculo en módulos puros, libres de efectos secundarios, y dejar que el punto de entrada se encargue exclusivamente de la interacción con el usuario. Definir tipos como uniones de cadenas para clasificaciones (por ejemplo, los rangos de IMC) garantiza que cualquier valor fuera de lo permitido genere un error en tiempo de compilación, no en producción. TypeScript permite ser muy expresivo con type aliases y uniones, y esa expresividad se traduce en menos bugs cuando el software llega a manos del cliente.

Las pruebas unitarias con Vitest refuerzan esa confianza. Al escribir tests de frontera —justo por debajo y por encima de los umbrales— se verifica que la lógica de ramificación responde correctamente. Este enfoque es exactamente el mismo que aplicamos en Q2BSTUDIO cuando desarrollamos aplicaciones a medida, donde la calidad del código no es negociable. Combinar tipado fuerte con una cobertura de pruebas bien pensada reduce drásticamente los errores en entornos productivos.

Uno de los retos típicos en proyectos similares es gestionar la asincronía de la entrada por consola. Olvidar que readline.question es asíncrono provoca que la interfaz se cierre antes de obtener la segunda respuesta. Es un error sutil que solo se descubre al depurar, pero que enseña una lección valiosa: la posición de los callbacks no es trivial. En entornos empresariales, donde trabajamos con ia para empresas y servicios cloud, este nivel de cuidado con los flujos asíncronos es imprescindible para construir sistemas robustos.

La configuración del proyecto también merece atención. Sincronizar el campo type en package.json con module en tsconfig.js evita errores de interpretación de módulos. Es un detalle menor, pero olvidarlo puede detener todo el pipeline de integración continua. En Q2BSTUDIO, cuando desplegamos soluciones de ciberseguridad o servicios inteligencia de negocio como Power BI, la correcta configuración del entorno es tan crítica como la lógica del negocio.

Este tipo de ejercicios, aunque sencillos, preparan el terreno para desafíos mayores: integración de agentes IA, automatización de procesos con flujos complejos o la orquestación de servicios cloud aws y azure. Cada concepto aprendido aquí —tipos estrictos, pruebas de frontera, manejo de asincronía— se replica y escala en proyectos de software a medida que transforman la operativa de las organizaciones.

La práctica deliberada, combinada con el uso responsable de asistentes de IA para aclarar dudas de diseño o detectar bugs, acelera la curva de aprendizaje sin sacrificar la comprensión profunda. Escribir el código uno mismo, validar cada decisión tipográfica y documentar los bloqueos es el camino más sólido para crecer como desarrollador. Y cuando esos conocimientos se aplican en entornos reales, el resultado son aplicaciones que no solo funcionan, sino que se mantienen y evolucionan con confianza.

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