CarlosELD /
TELKotlin
Aplicación que maneja mensajeria utilizando funciones de composable y mediate lenguaje Kotlin
27/100 healthLoading repository data…
Azelmods677 / repository
**Aplicación de mensajería avanzada para Android** con características: llamadas WebRTC, Stories multimedia, navegación Tor, asistente IA , terminal integrado, editor de código y seguridad.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
NexusChat no es un clon de un mensajero existente: combina comunicación en tiempo real con un conjunto de herramientas de privacidad y productividad poco habituales en el género —navegador Tor integrado, editor de código, terminal y asistente de IA— bajo una identidad visual coherente y oscura.
mindmap
root((NexusChat))
Comunicación
Chats 1:1 y grupos
Llamadas voz/video P2P
Historias efímeras
Privacidad
E2EE ECDH + AES-256-GCM
Navegación Tor / Orbot
Bloqueo biométrico
Productividad
Asistente de IA
Editor de código
Terminal
Identidad
Nexus Design System
Tema oscuro + gradientes
25 acentos de usuario
NexusChat sigue MVVM + Repository con flujo de datos unidireccional (UDF): la
interfaz es una función del estado, y el estado fluye siempre en una sola dirección. Los
datos en tiempo real de Firebase se exponen como Flow, los ViewModels los transforman en
un StateFlow inmutable, y Compose se recompone automáticamente cuando ese estado cambia.
flowchart TB
subgraph P["🎨 Presentación"]
direction LR
C["Compose UI · Material 3"]
DS["Nexus Design System<br/><i>tokens · componentes · motion</i>"]
end
subgraph L["🧠 Presentación-lógica"]
VM["ViewModels @HiltViewModel<br/><i>StateFlow<UiState></i>"]
end
subgraph D["📦 Dominio"]
UC["UseCases · contratos de repositorio"]
end
subgraph DA["💾 Datos"]
direction LR
REPO["Repositories"]
SEC["E2EE · Keystore seguro"]
end
subgraph E["☁️ Servicios externos"]
direction LR
FB[("Firebase<br/>Auth · RTDB · Storage")]
RTC["WebRTC"]
TOR["Tor / Orbot"]
end
P --> L --> D --> DA --> E
flowchart LR
FB[("Firebase")] -- "listeners → Flow" --> REPO["Repositories"]
REPO -- "Flow / suspend" --> VM["ViewModels"]
VM -- "publica" --> STATE["StateFlow<UiState>"]
STATE -- "collectAsState()" --> UI["Compose UI"]
UI -- "eventos" --> VM
VM -- "acciones" --> REPO
REPO -- "escrituras" --> FB
Principios que sostienen el diseño:
El servidor nunca ve texto plano. El cifrado ocurre en el dispositivo del emisor y solo el receptor puede descifrar, usando un secreto compartido derivado con ECDH.
sequenceDiagram
autonumber
participant A as 📱 Emisor
participant EA as 🔐 E2EE (A)
participant FB as ☁️ Firebase RTDB
participant EB as 🔐 E2EE (B)
participant B as 📱 Receptor
A->>EA: mensaje en claro
Note over EA: ECDH(privA, pubB)<br/>→ secreto compartido
EA->>EA: AES-256-GCM(secreto, mensaje)
EA->>FB: payload cifrado
FB-->>EB: payload cifrado
Note over EB: ECDH(privB, pubA)<br/>→ mismo secreto
EB->>EB: descifra AES-256-GCM
EB->>B: mensaje en claro
app/src/main/java/com/Azelmods/App/
├── data/ # Capa de datos
│ ├── repository/ # Repositories (RTDB, Storage, fondos de chat…)
│ ├── model/ # Modelos (User, Message, Chat…)
│ ├── security/ # Cifrado E2EE (ECDH + AES-256-GCM) y almacenamiento seguro
│ ├── ai/ # AiKeyStore (clave de IA cifrada) y cola de peticiones
│ ├── translation/ # Servicio de traducción de mensajes
│ ├── local/ # Caché local de mensajes
│ ├── preferences/ # Preferencias de usuario y tema (DataStore)
│ └── … # api, backup, chat, firebase, session, work
├── di/ # Módulos de inyección de dependencias (Hilt)
├── domain/
│ ├── repository/ # Contratos de la capa de dominio
│ └── usecase/ # Casos de uso (cifrado, backups, stories…)
├── security/ # App lock, detección de root/tampering
├── service/ # Servicios en segundo plano (FCM, notificaciones)
├── ui/
│ ├── components/ # Composables reutilizables (NexusButton, NexusGlassCard…)
│ ├── navigation/ # NavGraph y rutas
│ ├── screens/ # Pantallas por feature (chat, home, calls, stories…)
│ └── theme/ # Nexus Design System: tokens, color, tipografía, motion
├── webrtc/ # Motor de llamadas (PeerConnection, cámara, audio)
└── utils/ # Utilidades compartidas
Se mantienen fuera de la interfaz hasta estar completas: Smart Replies, auto-traducción de chats entrantes, resumen de conversaciones, sugerencias de tono, mejora de fotos y transcripción de voz.
La identidad visual de NexusChat vive en un Design System propio (ui/theme/) que actúa como
única fuente de verdad: ninguna pantalla hardcodea colores, tamaños, radios ni tipografías.
flowchart LR
subgraph NT["NexusTokens — fuente única"]
COL["🎨 Color<br/>marca · superficies · texto"]
TYP["🔤 Tipografía<br/>Material 3 · 15 estilos"]
SP["📏 Espaciado · Radios · IconSize"]
MO["🎬 Motion<br/>springs nombrados"]
end
subgraph CMP["Componentes"]
B["NexusButton"]
G["nexusGlass()"]
GC["NexusGlassCard"]
TB["UnifiedTopBar"]
end
NT --> CMP --> SCR["Pantallas"]
Pilares del sistema:
#7C6FE0 → cian),
con un test de contraste WCAG (NexusPaletteContrastTest) que rompe la compilación si
un par texto/superficie deja de cumplir el mínimo legible.Modifier.nexusGlass() define la
superficie de vidrio de la app; los componentes lo consumen en vez de reconstruirla.springDefault / springBouncy) que
las pantallas consumen, en lugar de inventar animaciones locales.ColorScheme de Material 3.Documentación de diseño completa en
docs/: auditoría, principios y sistema.
| Tecnología | Rol | Por qué |
|---|---|---|
| Kotlin 2.1.20 | Lenguaje | Null-safety, corrutinas y Flow nativos: la base de toda la reactividad. |
| Jetpack Compose (Material 3) | UI | UI declarativa: la interfaz es una función del estado, sin sincronizar vistas a mano. |
| Firebase (Auth · RTDB · Storage) | Backend | Sincronización en tiempo real con listeners push, autenticación y media gestionadas. |
| Hilt 2.54 | Inyección de dependencias | Grafo validado en compilación e integrado al ciclo de vida (@HiltViewModel). |
| WebRTC | Llamadas | Estándar abierto para audio/video P2P de baja latencia. |
| ECDH + AES-256-GCM | Cifrado | Acuerdo de claves por curva elíptica + cifrado autenticado para el E2EE. |
| Tor / Orbot · NetCipher | Anonimato | Enrutado del navegador integrado por la red Tor. |
| MVVM + Repository | Arquitectura | Separa UI, estado y datos: cada capa se testea y reemplaza aislada. |
| minSdk 31 / targetSdk 36 | Compatibilidad | Android 12+ con las APIs modernas de Android 16 (edge-to-edge). |
La privacidad del usuario es un requisito de diseño, no una opción:
Selected from shared topics, language and repository description—not editorial ratings.
CarlosELD /
Aplicación que maneja mensajeria utilizando funciones de composable y mediate lenguaje Kotlin
27/100 healthVictorHerdz10 /
QuantumTalk es una aplicación de chat moderna en desarrollo construida con Ionic React y Capacitor, que compila tanto código nativo Android (Java/Kotlin) como iOS (Swift) para ofrecer una experiencia de mensajería rápida, segura y con todas las funcionalidades nativas en ambas plataformas móviles.
34/100 healthSimply-Aquino /
Una aplicación de chat móvil utilizando Kotlin y Firebase. El objetivo es crear una plataforma de mensajería intuitiva y fácil de usar, permitiendo la comunicación en tiempo real entre los usuarios. A lo largo del proyecto, se trabajará en grupo, por lo que se explorarán distintas funcionalidades y mejoras a medida que avanzamos en el desarrollo.