Saltar al contenido

5 paquetes de Flutter indispensables para todo proyecto

abril 7, 2021

Cuando comenzamos una aplicación móvil con Flutter, podemos utilizar paquetes para facilitar el desarrollo, estos paquetes son opcionales, sin embargo hay unos que son sumamente útiles que puedo decir que recomiendo al 100% su uso.

Algunos paquetes de Flutter son tan geniales que considero indispensable para cualquier proyecto, al punto que creo que debería venir ya incluidos en el SDK de Flutter por defecto. Si eres desarrollador de aplicaciones móviles hechas con Flutter, conocer y usar estos paquetes puede facilitarte mucho el desarrollo.

En este artículo voy a enumerar 5 paquetes que personalmente considero indispensables para cualquier proyecto nuevo, al punto que en muchas ocasiones los instalo incluso antes de empezar a codificar las primeras líneas de código. Cosas como almacenar datos de forma local o mostrar mensajes al usuario pueden convertirse en algo básico en cualquier aplicación así que es bueno tener lo necesario a la mano.

Por supuesto que estos son los paquetes indispensables para mi, si tu conoces uno o más paquetes que consideras que deben estar en esta lista, puedes dejarlo en los comentarios para que los conozcamos y nos ayudemos mutuamente. Sin más que decir, comencemos:

1. fluttertoast

Este es uno de mis paquetes favoritos, me parece extremadamente útil y sobre todo extremadamente fácil de usar. Una vez que lo instalar puedes enviar pequeñas notificaciones discretas al usuario en cualquier momento o en respuesta a un evento.

Todos hemos visto en algún momento en una aplicación un Toast, especialmente en Android es muy común ver este tipo de mensajes en nuestras aplicaciones que nos informan que algo se ha actualizado o que una tarea a terminado, etc. Mantener a nuestros usuarios es importante en cualquier desarrollo de software, por lo cual este paquete me parece indispensable para cualquier aplicación hecha en Flutter.

Algo adicional que me gusta de este paquete es que es independiente del contexto, si has programado en Flutter seguro sabes de qué estoy hablando. En el caso de este paquete no debes preocuparte del context y puedes realizar el llamado en cualquier lugar. Puedes conocer más sobre este paquete en este link.

2. auto_route

Si bien el manejo de las rutas con router 2.0 es muy completo, sigue siendo complejo el manejo completo y avanzado de rutas dentro de una aplicación hecha en Flutter. Para esto, creo que el paquete auto_route es el paquete perfecto para facilitar el uso de rutas en Flutter.

auto_route permite el paso de argumentos fuertemente tipados, con una cantidad mínima de código puede generar todo lo necesario para la navegación dentro de su aplicación. Por esta razón es uno de los primeros paquetes que instalo en mis proyectos Flutter.

Un buen manejo de rutas dentro de tu aplicación te permite aumentar la posibilidad de escalar la aplicación sin preocuparte de tener algún problema a la hora de navegar las diferentes páginas sin necesitad de tener que hacer validaciones complejas dentro de cada página verificando desde donde está siendo llamada. Si quieres conocer más este paquete puedes encontrarlo en este link.

3. json_serializable

Toda aplicación moderna, en algún momento va a utilizar el formato conocido JSON. El uso del formato JSON ya es un estándar en todo el desarrollo de software. El uso de JSON nos permite conectarnos a bases de datos o APIs de cualquier sitio web y poder utilizar los datos e incluso saber la forma en que vendrán ordenados y como leerlos.

Podría interesarte: ¿Qué es el formato JSON y para qué sirve?

Flutter me encanta, sin embargo tiene una forma extraña de tratar los archivos JSON, a pesar de ser de fácil aprendizaje, no me parece que sea la mejor solución. Este paquete proporciona constructores de Dart Build System para el manejo de Json. Aprender a trabajar con JSON es indispensable para cualquier programador, ya sea FrontEnd o BackEnd.

Una vez que aprendes a manejar JSON con json_serializable, sentirás que es muy fácil tratar grandes cantidades de información simplemente creando modelos y un constructor que nos factorice una clase que se adapte a nuestros datos. Una forma muy segura de trabajar y mucho más si la adaptamos con el nuevo NullSafety que se incluye en Flutter 2.0. Si quieres conocer más sobre este paquete puedes hacerlo en este link.

4. http

Este es un paquete poderoso e increíblemente útil. La mayoría de aplicaciones en algún momento se conectarán a internet para poder obtener o guardar información, para esto no hay un mejor paquete que http. Este paquete lo instalo en todos mis proyectos, me sirve para llevar un control en mis servidores el uso de mis aplicaciones, una especie de Analitics personal.

Con http puedes hacer cualquier tipo de petición http a cualquier API en la web, muy poderoso y seguro. También es un paquete muy completo ya que permite el envío de parámetros y cabeceras que son necesarias por cuestiones de seguridad en algunos backends.

Personalmente me gusta la forma en que maneja los callback y los posibles errores, http te permite manejar todo lo que puede suceder al momento de realizar nuestra petición. Si quieres conocer más sobre este tan útil paquete, puedes hacerlo desde este link.

5. provider

Este paquete es un manejador de estado global de la aplicación. Podemos decir que es una opción al método Bloc y personalmente pienso que es mucho más sencilla de usar que su competencia. Provider es uno de los paquetes más usados de pub.dev por lo que tiene el sello de Flutter Favorite.

Provider te permite leer una variable o editarla desde cualquier parte de la aplicación que se hija de o que este envuelta en el Widget que implementa el provider. A fines prácticos se suele envolver el primer main con la lista de providers para que tener acceso en toda la aplicación.

Podría interesarte: ¿Cómo instalar Angular y crear tu primer proyecto?

Si alguna vez has trabajado con Angular, puedes pensar en un provider como si se tratara de un Service de Angular. Es prácticamente un servicio que te permite tener información que puede ser accedida o editada, por ejemplo puedes usarlo para hacer la petición http e iniciar sesión y tener la información de usuario en el servicio, la información se mantendrá y podrás verificar la identidad en todas las páginas de la aplicación. Si quieres saber más sobre provider puedes hacerlo en este link.

Estos son para mi, los paquetes que no deben faltar en cualquier aplicación que hagas en Flutter, son muy útiles y sencillos de usar. Sin embargo sé muy bien que no son los únicos paquetes indispensables. Eres libre de dejar tus paquetes favoritos en los comentarios, quizá hago una parte 2 de este artículo.

Sin más que decir, espero que te haya gustado, pero sobre todo, espero que te haya servido este artículo. Hasta la próxima.