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
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.
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.
- 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
- 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
ββββββββββββββββββββ
β Usuario β
ββββββββββ¬ββββββββββ
β
βΌ
ββββββββββββββββββββ
β Google OAuth β
ββββββββββ¬ββββββββββ
β
βΌ
ββββββββββββββββββββ
β Gmail API β
ββββββββββ¬ββββββββββ
β
βΌ
ββββββββββββββββββββ
β Procesamiento β
β Email β
ββββββββββ¬ββββββββββ
β
βΌ
ββββββββββββββββββββ
β Text-to-Speech β
ββββββββββββββββββββ
β
βΌ
π Audio
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
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 β
ββββββββββββββββ
| Γrea | TecnologΓas |
|---|---|
| Frontend | Flutter Β· Dart |
| Backend | Java Β· Spring Boot |
| Gmail API | |
| Authentication | Google OAuth 2.0 |
| Voice | Text-to-Speech |
| AI | AI-powered summaries |
| Database | PostgreSQL |
| DevOps | Docker |
| Documentation | Markdown Β· ADRs |
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/.
- IntegraciΓ³n Text-to-Speech
- ReproducciΓ³n de contenido
- Mejoras de experiencia de reproducciΓ³n
- Google OAuth
- IntegraciΓ³n Gmail API
- RecuperaciΓ³n de emails
- VisualizaciΓ³n de mensajes
- API con Spring Boot
- GestiΓ³n de usuarios
- Preferencias
- Persistencia
- Historial
- ResΓΊmenes de emails
- PriorizaciΓ³n
- CategorizaciΓ³n
- Procesamiento inteligente
- Respuestas mediante voz
- Soporte para mΓΊltiples proveedores
- Deploy
- Mejoras de accesibilidad
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.
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
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.
MailFlow es un proyecto personal en desarrollo, pero las contribuciones son bienvenidas.
Si querΓ©s aportar:
- HacΓ© un fork del repositorio.
- CreΓ‘ una rama para tu cambio:
git checkout -b feature/mi-mejora - HacΓ© commit de tus cambios:
git commit -m "feat: agrego X" - SubΓ la rama:
git push origin feature/mi-mejora - 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 π
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.
PodΓ©s explorar el cΓ³digo, la documentaciΓ³n y las decisiones tΓ©cnicas del proyecto: