馃敄

Arsus App

Profesor: Omar Alvarez Xochihua

Proyecto final: Arsus

Carlos Eduardo S谩nchez Torres (361075)

Carlo Alfredo Pano Flores聽 聽 聽 (362260)

Fecha: 14/05/2021

Descripci贸n

Es una aplicaci贸n para celulares Android cuyo objetivo es ser un portafolio personal de proyectos, compartirlo con la comunidad v铆a open source y otras redes sociales. Al momento de ingresar a la aplicaci贸n aparecer谩 un apartado de noticias, tanto en video como en p谩ginas聽 web. En la parte superior derecha aparecer谩 un bot贸n para iniciar sesi贸n con el cual podremos iniciar sesi贸n por medio de una contrase帽a y correo electr贸nico propio, o bien por medio de una cuenta en Facebook y Google.

Ya dentro aparecer谩 un men煤 con todas las funciones que estar谩n implementadas. En el cual estar谩 la aplicaci贸n para saber si tu credencial (INE), est谩 todav铆a vigente y puedas votar. Se abrir谩 la c谩mara y tendr谩s que tomar una foto de tu credencial.

Todo esto estar谩 desarrollado en Android Studio, usando un framework como lo es Flutter, es un sdk desarrollado por Google de c贸digo abierto para crear aplicaciones nativas de forma f谩cil, r谩pida y sencilla. Usaremos 2captcha, es un un sitio web para resolver captchas, se usar谩 el servicio que ofrecen para resolver los captchas, al momento de por medio de la foto de la credencial sacar el c贸digo de identificaci贸n de la credencial y el identificador del ciudadano, la p谩gina pedir谩 resolver un captcha y ah铆 es donde ocupamos 2captcha.

Para que los 2 podamos trabajar en paralelo con la aplicaci贸n usaremos Git y Github, para que los cambios de c贸digo est茅n conectados entre las 2 computadoras y podremos trabajar en equipo.

Caracter铆sticas funcionales

  1. Listado de noticias mas recientes desde una base de datos preparada de antemano desde hace 6 meses, las cuales pueden provenir de YouTube (video), newsletter (titular), NewsApi (titular), Hacker News (titular) y Twitter (tweet).
    1. Mostrarse las primeras cinco noticias m谩s recientes.
    1. Mostrarse las siguientes cinco noticias m谩s recientes.
    1. Dado un usuario an贸nimo o autenticado Cuando seleccione una noticia, mostrar la noticia desde la aplicaci贸n o redirigir a donde sea pertinente.
  1. Listado de aplicaciones ordenadas por mayor uso desde una base datos, las cuales pueden ser aplicaciones web y p谩ginas de dart.
    1. Dado un usuario autenticado Cuando seleccione una aplicaci贸n tipo web embebible Entonces se abre la p谩gina embebida.
    1. Dado un usuario autenticado Cuando seleccione una aplicaci贸n tipo dart Entonces se ejecuta el c贸digo correspondiente.
  1. Autenticar al usuario v铆a correo electr贸nico, Facebook y Google usando Firebase.
    1. Registro e inicio de sesi贸n autom谩tico con correo electr贸nico y contrase帽a.
    1. Registro e inicio de sesi贸n autom谩tico con Google.
    1. Registro e inicio de sesi贸n autom谩tico con Facebook.
    1. Cumplir con medidas de seguridad sobre el uso de token: no compartir claves privadas en repositorios ni sobre el c贸digo.
  1. Verificar en la lista nominal del INE si es una credencial vigente.
    1. Dado un usuario autenticado Cuando toma una foto a su credencial Entonces v谩lida si puede votar y muestra un screenshot de su estado en la lista nominal. Consideraciones: romper el captcha mediante 2captcha, usar la API Visi贸n de la nube de Google para obtener la informaci贸n de la API y crear una Cloud Function usando JS y puppeteer para resolver estas tareas. Entregar el resultado en formato JSON: {screenshot: 鈥淪TORAGE URL鈥, isValid: true}.
    1. Si la credencial es v谩lida, entonces el usuario quiere compartir su resultado.
  1. [No prioritario] Listado de medios de contacto desde una base de datos.

Caracter铆sticas no funcionales

Entrega de video demo el 31 de mayo.

Publicar la aplicaci贸n en Google Play el 29 de mayo.

Cloud Function con 2GB en US-West.

Comprar dominio web.

Interfaz gr谩fica

Interfaz

NameCreatedTags
Home
Login
INE
Photo
Data
INE
Apps

Arquitectura

Arquitectura

NameCreatedTags
Getting started
Server
Services
Views

Todas las p谩ginas siguen el mismo patr贸n: Markup, Style y WidgetState.

Planeaci贸n

Planeaci贸n

Property17/05/202118/05/202119/05/202120/05/202121/05/202122/05/202123/05/202124/05/202125/05/202126/05/202127/05/202128/05/202129/05/202130/05/2021
Listado de noticias mas recientes desde una base de datos preparada de antemano desde hace 6 meses, las cuales pueden provenir de YouTube (video), newsletter (titular), NewsApi (titular), Hacker News (titular) y Twitter (tweet).
Mostrarse las primeras cinco noticias m谩s recientes.
Mostrarse las siguientes cinco noticias m谩s recientes.
Dado un usuario an贸nimo o autenticado Cuando seleccione una noticia, mostrar la noticia desde la aplicaci贸n o redirigir a donde sea pertinente.
Listado de aplicaciones ordenadas por mayor uso desde una base datos, las cuales pueden ser aplicaciones web y p谩ginas de dart.
Dado un usuario autenticado Cuando seleccione una aplicaci贸n tipo web embebible Entonces se abre la p谩gina embebida.
Dado un usuario autenticado Cuando seleccione una aplicaci贸n tipo dart Entonces se ejecuta el c贸digo correspondiente.
Autenticar al usuario v铆a correo electr贸nico, Facebook y Google usando Firebase.
Registro e inicio de sesi贸n autom谩tico con correo electr贸nico y contrase帽a.
Registro e inicio de sesi贸n autom谩tico con Google.
Registro e inicio de sesi贸n autom谩tico con Facebook.
Cumplir con medidas de seguridad sobre el uso de token: no compartir claves privadas en repositorios ni sobre el c贸digo.
Verificar en la lista nominal del INE si es una credencial vigente.
Validar INE
Convertir imagen a objeto INE (uso de Google Vision)
Raspar y parsear la informaci贸n de la lista nominal del INE (2captcha y Puppeteer)
Si la credencial es v谩lida, entonces el usuario quiere compartir su resultado en redes sociales
Si la credencial es v谩lida, entonces el usuario quiere descargar su resultado
Si la credencial es v谩lida, entonces el usuario quiere mandarla al clipboard.
Mostrar imagen del resultado de la lista nominal y un mensaje con respecto al mismo.
Publicar video
Subir aplicaci贸n a google play
UntitledCarlo Pano
UntitledCarlo Sanchez
Otras
Dynamic Links

  1. Centralizar blog.
  1. Mejora de desempeno.
  1. CURP.