Zoho Tables

Building a spreadsheet-database hybrid with Flutter

Métricas de éxito

60%

tamaño de equipo más pequeño

50%

reducción en los costos de los desarrolladores

42%

tasas de actualización más altas

Zoho atiende a más de 130 millones de usuarios en 180 países a través de un catálogo de 55 aplicaciones. La duplicación de esfuerzos en las plataformas Android, iPhone e iPad representaba un enorme desgaste de recursos de ingeniería. Para abordar este desafío, el equipo adoptó Flutter para construir Zoho Tables con una fracción de sus recursos de ingeniería.

iPhone y iPad

Why Flutter?

Antes de comprometerse con una tecnología, el equipo de Zoho Tables construyó rigurosas pruebas de concepto, ejecutó pruebas de widgets y midió las tasas de actualización (refresh rates) de diferentes tecnologías multiplataforma. Flutter superó consistentemente a la competencia, demostrando una tasa de actualización un 42% mayor. Este alto rendimiento era profesional y esencial para el «lienzo infinito» de la aplicación, que alberga enormes hojas de cálculo, galerías y calendarios.

Android

Además, la completa documentación de Flutter permitió a sus desarrolladores de Java y Swift existentes hacer la transición a Dart casi de inmediato, haciendo posible construir componentes de interfaz de usuario funcionales en muy poco tiempo. Flutter también permitió al equipo respetar las convenciones de diseño específicas de la plataforma utilizando las bibliotecas Material y Cupertino mientras mantenían una única base de código.

Su solución: Construir con Flutter

El equipo de Zoho Tables construyó la aplicación móvil renderizando el contenido en un lienzo personalizado utilizando el trazado personalizado (custom paint) y la física de desplazamiento (scroll physics) de Flutter. Esta implementación personalizada logró un desplazamiento fluido para los usuarios que interactúan con datos que van desde 100 hasta 100,000 filas.

iPhone

Para integrar características de hardware nativas, el equipo combinó los canales de plataforma (platform channels) de Flutter con las APIs nativas. Este enfoque trajo soporte para Apple Pencil y Samsung S Pen, permitiendo a los usuarios hacer bosquejos, tomar notas e incluso crear una nueva base de datos dibujando un formulario. Para la gestión de State, el equipo utilizó una combinación de BLoC, ValueNotifier y ValueListenableBuilder para organizar una base de código de más de un millón de líneas de código. El equipo también está experimentando con el uso del SDK GenUI de Flutter para permitir a los usuarios crear paneles enriquecidos con IA e integrar Zoho Tables con agentes de IA con Gemini.

Key results and business impact

Al adoptar Flutter, el equipo de Zoho Tables logró una velocidad de desarrollo significativa y reducciones de costos:

  • Alcanzó la paridad de funciones con su aplicación web en un 14% menos de tiempo.
  • Lanzó en dispositivos móviles con un equipo que era un 60% más pequeño que el equipo de la aplicación web.
  • Redujo los costos generales de desarrollo en un 50%.
  • Disminuyó los tiempos de compilación en un 70% utilizando Hot Reload y compilación rápida.
  • Logró una tasa de actualización un 42% mayor en comparación con otras opciones multiplataforma.