Skip to content

Latest commit

Β 

History

63 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ™οΈ MailFlow

ΒΏY si pudieras escuchar tus emails en lugar de leerlos?

MailFlow es un asistente de correo electrΓ³nico web que transforma los emails en audio mediante Text-to-Speech y busca incorporar resΓΊmenes generados con inteligencia artificial para facilitar el consumo de informaciΓ³n cuando leer no resulta prΓ‘ctico.

🚧 Proyecto personal en desarrollo

Flutter Dart Gmail API OAuth 2.0 Spring Boot PostgreSQL Docker


πŸ’‘ El problema

MailFlow naciΓ³ a partir de una situaciΓ³n real.

Una persona cercana a mΓ­ recibe una gran cantidad de correos electrΓ³nicos durante su jornada laboral y no siempre dispone del tiempo necesario para leerlos todos.

Una de sus necesidades era poder escuchar los emails mientras se trasladaba, sin depender de Siri.

Esto llevΓ³ a una pregunta:

ΒΏPor quΓ© un email tiene que ser necesariamente algo que leemos?

A partir de esa idea comenzΓ³ MailFlow.


Objetivo

El objetivo de MailFlow es explorar una experiencia de correo electrΓ³nico mΓ‘s flexible, donde el usuario pueda:

  • consultar sus emails;
  • escucharlos mediante Text-to-Speech;
  • obtener resΓΊmenes de mensajes extensos;
  • identificar mensajes relevantes;
  • interactuar con el correo mediante voz.

La aplicaciΓ³n estΓ‘ pensada especialmente para situaciones donde mantener la atenciΓ³n sobre una pantalla no resulta prΓ‘ctico.


Funcionalidades

Actualmente implementado

  • AutenticaciΓ³n mediante Google OAuth 2.0
  • IntegraciΓ³n con Gmail API
  • RecuperaciΓ³n de correos electrΓ³nicos
  • VisualizaciΓ³n de mensajes
  • ConversiΓ³n de texto a voz
  • Interfaz web desarrollada con Flutter

En desarrollo

  • ResΓΊmenes de emails mediante IA
  • PriorizaciΓ³n inteligente
  • CategorizaciΓ³n automΓ‘tica
  • InteracciΓ³n mediante comandos de voz
  • Respuestas mediante voz
  • Soporte para otros proveedores de correo

Flujo actual

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚    Usuario       β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
         β”‚
         β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   Google OAuth   β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
         β”‚
         β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚    Gmail API     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
         β”‚
         β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Procesamiento    β”‚
β”‚     Email        β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
         β”‚
         β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  Text-to-Speech  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
         β”‚
         β–Ό
       πŸ”Š Audio

Arquitectura

Arquitectura actual

La versiΓ³n actual estΓ‘ centrada en Flutter y la integraciΓ³n directa con los servicios necesarios para obtener y reproducir los correos.

Flutter Web
    β”‚
    β”œβ”€β”€ Google OAuth 2.0
    β”‚
    β”œβ”€β”€ Gmail API
    β”‚
    β”œβ”€β”€ Email Processing
    β”‚
    └── Text-to-Speech

Arquitectura planificada

A medida que el proyecto evolucione, la arquitectura contempla incorporar un backend para separar responsabilidades y centralizar la lΓ³gica de negocio.

                  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                  β”‚ Flutter Web   β”‚
                  β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜
                          β”‚
                          β–Ό
                  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                  β”‚ Spring Boot   β”‚
                  β”‚     API       β”‚
                  β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜
                          β”‚
                β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                β–Ό                   β–Ό
        β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
        β”‚ PostgreSQL   β”‚    β”‚ AI Services  β”‚
        β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                β”‚
                β–Ό
          β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
          β”‚  Gmail API   β”‚
          β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ› οΈ TecnologΓ­as

Área Tecnologías
Frontend Flutter Β· Dart
Backend Java Β· Spring Boot
Email Gmail API
Authentication Google OAuth 2.0
Voice Text-to-Speech
AI AI-powered summaries
Database PostgreSQL
DevOps Docker
Documentation Markdown Β· ADRs

Decisiones tΓ©cnicas

MailFlow tambiΓ©n funciona como un espacio de aprendizaje y experimentaciΓ³n sobre desarrollo de software.

Algunas decisiones se documentan mediante Architecture Decision Records (ADR) para registrar:

  • alternativas consideradas;
  • decisiones tomadas;
  • motivos tΓ©cnicos;
  • consecuencias;
  • posibles cambios futuros.

πŸ“š La documentaciΓ³n tΓ©cnica se encuentra en docs/.


Roadmap

πŸ”Š Fase 1 β€” Voz

  • IntegraciΓ³n Text-to-Speech
  • ReproducciΓ³n de contenido
  • Mejoras de experiencia de reproducciΓ³n

πŸ“§ Fase 2 β€” Gmail

  • Google OAuth
  • IntegraciΓ³n Gmail API
  • RecuperaciΓ³n de emails
  • VisualizaciΓ³n de mensajes

βš™οΈ Fase 3 β€” Backend

  • API con Spring Boot
  • GestiΓ³n de usuarios
  • Preferencias
  • Persistencia
  • Historial

πŸ€– Fase 4 β€” Inteligencia Artificial

  • ResΓΊmenes de emails
  • PriorizaciΓ³n
  • CategorizaciΓ³n
  • Procesamiento inteligente

πŸš€ Fase 5 β€” EvoluciΓ³n

  • Respuestas mediante voz
  • Soporte para mΓΊltiples proveedores
  • Deploy
  • Mejoras de accesibilidad

Seguridad

MailFlow trabaja con informaciΓ³n potencialmente sensible, por lo que la autenticaciΓ³n y el acceso a los datos de correo forman parte importante del diseΓ±o.

El proyecto utiliza OAuth 2.0 para la autenticaciΓ³n con Google y busca aplicar el principio de mΓ­nimo privilegio respecto de los permisos solicitados.


Estructura

mailflow/
β”‚
β”œβ”€β”€ frontend/
β”‚   β”œβ”€β”€ lib/
β”‚   β”‚   β”œβ”€β”€ models/
β”‚   β”‚   β”œβ”€β”€ screens/
β”‚   β”‚   β”œβ”€β”€ services/
β”‚   β”‚   β”œβ”€β”€ widgets/
β”‚   β”‚   β”œβ”€β”€ constants/
β”‚   β”‚   └── theme/
β”‚   β”‚
β”‚   β”œβ”€β”€ android/
β”‚   β”œβ”€β”€ ios/
β”‚   β”œβ”€β”€ web/
β”‚   β”œβ”€β”€ windows/
β”‚   β”œβ”€β”€ linux/
β”‚   └── macos/
β”‚
β”œβ”€β”€ backend/
β”‚
β”œβ”€β”€ docs/
β”‚   β”œβ”€β”€ decisions/
β”‚   β”œβ”€β”€ architecture.md
β”‚   β”œβ”€β”€ roadmap.md
β”‚   └── ...
β”‚
β”œβ”€β”€ README.md
└── LICENSE

Estado del proyecto

MailFlow se encuentra actualmente en desarrollo.

La aplicaciΓ³n estΓ‘ evolucionando desde un prototipo inicial hacia una arquitectura mΓ‘s completa, incorporando progresivamente autenticaciΓ³n, integraciΓ³n con Gmail, procesamiento de emails, Text-to-Speech, backend e inteligencia artificial.


Contribuciones

MailFlow es un proyecto personal en desarrollo, pero las contribuciones son bienvenidas.

Si querΓ©s aportar:

  1. HacΓ© un fork del repositorio.
  2. CreΓ‘ una rama para tu cambio: git checkout -b feature/mi-mejora
  3. HacΓ© commit de tus cambios: git commit -m "feat: agrego X"
  4. SubΓ­ la rama: git push origin feature/mi-mejora
  5. AbrΓ­ un Pull Request describiendo quΓ© cambiaste y por quΓ©.

Voy a revisar cada PR y decidir si se integra o no, siempre priorizando la coherencia con el roadmap y la arquitectura del proyecto.

Si encontrΓ‘s un bug o tenΓ©s una idea, podΓ©s abrir un issue antes de escribir cΓ³digo para charlarlo.

Gracias por el interΓ©s πŸ™Œ

πŸ‘©πŸ½β€πŸ’» Autora

Brisa Anahi Escobar

Estudiante de IngenierΓ­a en Sistemas de InformaciΓ³n Β· Desarrolladora de Software en formaciΓ³n.

MailFlow es un proyecto personal creado para explorar la integraciΓ³n entre desarrollo de aplicaciones, APIs, autenticaciΓ³n, voz e inteligencia artificial, partiendo de un problema real.


ΒΏQuerΓ©s conocer mΓ‘s?

PodΓ©s explorar el cΓ³digo, la documentaciΓ³n y las decisiones tΓ©cnicas del proyecto:

πŸ‘‰ Ver MailFlow en GitHub

About

(2026) MailFlow is a web-based email assistant that turns Gmail messages into audio and AI-powered summaries, making email consumption more accessible when you can't read your inbox.

Topics

Resources

Stars

11 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages