Community Health Tracking System

Buenas a todos! Soy Mauricio García, especialista en Mat|r, hoy vamos a hablar sobre la Aplicación Community Health realizada por integrantes del equipo de Mat|r.

 

El equipo tuvo que desarrollar unas API Rest para poder extraer la información, de la mejor fuente, sobre el Covid-19 en todo el mundo y poder representarla en formato JSON que es lo que entiende Mat|r Script para poder trabajar con los datos. 

  • El Endpoint getDataCoronavirusLmao nos devuelve toda la información y estadísticas sobre Covid-19 en cada uno de los países del mundo.
  • El Endpoint getOmsFeed nos va a traer las últimas Noticias de la OMS para que podamos estar informados y tener conocimiento de lo que pasa con la pandemia.

 

Ya con estos datos nos pusimos a desarrollar la Aplicación en la plataforma de Mat|r con Mat|r Script, por una parte se realizó un sistema de Login, la muestra de datos del Covid-19 con una lista por países que también integra un mapa, la muestra de las noticias y un sistema para poder ayudar o pedir ayuda a la comunidad que utilice esta Aplicación.

 

Se utilizó Zeplin para la realización de los mockups para las pantallas:

Éstas luego fueron diagramadas en Mat|r para darle forma a la :

Esto mismo se fue realizando con todas las pantallas, mientras, se les fue agregando código en Mat|r Script por detrás así las mismas podían ir siendo probadas.

 

Para poder trabajar en “simultáneo” sobre la plataforma de Mat|r creamos aplicaciones en las cuales cada uno fue trabajando diferentes funcionalidades y al final se juntó todo el código en la aplicación Community Health.

Para el código, nos organizamos en que cada Archivo Mat|r Script tendría una categoría de código, es decir, poner todas las Experiences con sus respectivos Contextos en un solo archivo, lo mismo para los Models, un archivo para la parte del Login/SignUp y tratamiento de sus datos, y un archivo con la carga de todos los datos necesarios para la aplicación, para cuando inicia la app y así obtener mayor fluidez en la aplicación mientras se está utilizando.

 

  • Para la parte del SingUp, utilizamos la opción de por loguearse a la aplicación con la cuenta de Facebook, para esto hemos hecho uso de la librería de Facebook que se encuentra en la plataforma; la misma trae documentación para poder utilizarla.


  • En la carga de Datos utilizamos la sentencia Application, así denotamos cual es el código principal que se tiene que ejecutar al iniciar la aplicación. En el archivo decidimos tener todo en Modules y Functions que se van a ir ejecutando a medida que se necesiten. Pueden ver que en la porción OnInit{} se llaman algunas funciones que contienen nuestras cargas de datos principales y necesarios.

  • En nuestro archivo de Experiences podemos encontrar todas las experiencias que comparten la información de trabajo de datos de inputs y visualización de las pantallas de la app.

  • Después tenemos el archivo de Models, en él vamos a encontrar todos los modelos de datos que usamos en la aplicación.

Mientras estuvimos trabajando nos encontramos con la necesidad de tener que convertir un dato de tipo String a Integer pero en Mat|r Script no tenemos ninguna función predeterminada para poder realizar esto, por lo que uno de nuestros compañeros realizó su propia función, en Mat|r Script, para poder realizar esta conversión:

Tiempos de Desarrollo

 

Yo desarrolle toda la lógica y pantallas sobre la funcionalidad de la comunidad que me llevó dos días de trabajo (8 hs/día) en los cuales realice:

  • Desarrollo de la UI y Lógica (Codificar).
  • Traspaso de funcionalidad de una app a la app principal.
  • Pruebas y arreglos tanto de código como de UI.

En su totalidad, con el Desarrollo de Endpoints, Mockups, Codificación, Pruebas y Arreglos; se necesitaron dos semanas de trabajo. De un equipo pequeño de dos desarrolladores Mat|r, un desarrollador backend y diseñadoras UX. 

 

App Final:

 

Espero que les guste. Saludos!