Docs/ Platform & apps

Rendimiento y local-first

Interacciones por debajo de 100 ms mediante caché local-first y listas virtualizadas.

AI Emaily está construido en torno a una arquitectura local-first: tu bandeja de entrada se pinta desde un caché local antes de que la red responda, luego se sincroniza en segundo plano, haciendo que las interacciones se sientan instantáneas incluso en conexiones lentas.

Caché de metadatos local

Cuando abres tu bandeja de entrada, AI Emaily renderiza desde un caché de metadatos almacenado localmente (remitente, asunto, fecha, estado de lectura, etiquetas) antes de que haya regresado un solo byte de red. La respuesta del servidor llega poco después y cualquier cambio (correo nuevo, actualizaciones de estado) se combina silenciosamente.

Este patrón significa que la bandeja de entrada nunca está en un estado de carga en blanco. Incluso en una red congestionada, puedes empezar a clasificar inmediatamente.

Caché vs. modo sin conexión

El caché de metadatos es una estructura en memoria y almacenamiento de sesión, no un caché de disco persistente. Acelera la carga; para la lectura verdaderamente sin conexión consulta 'PWA instalable y modo sin conexión'.

Listas virtualizadas

Sin importar cuántos miles de hilos haya en un buzón, el DOM solo contiene las filas visibles en el viewport más un pequeño buffer de sobrebarrido. Las filas fuera del viewport se reciclan mientras te desplazas.

Esto mantiene la tasa de fotogramas del desplazamiento suave y el uso de memoria constante: un buzón con 50 000 hilos se comporta de manera idéntica a uno con 50.

Lo que la virtualización significa en la práctica
Hilos en la bandeja de entrada50 000
Nodos DOM renderizados en cualquier momento~40–60 filas
Crecimiento de memoria a medida que crece la bandeja de entradaConstante
Rendimiento del desplazamientoObjetivo de 60 fps

Sincronización en tiempo real

AI Emaily mantiene una conexión en tiempo real persistente (a través de Appwrite Realtime) para que el correo nuevo, los cambios de etiquetas y las actualizaciones de estado de lectura se propaguen a todas las superficies abiertas en el instante en que se registran en el servidor.

No hay intervalo de sondeo. La bandeja de entrada se actualiza en vivo: un nuevo mensaje aparece en tu lista de hilos momentos después de llegar, sin necesidad de actualizar.

Múltiples dispositivos, una vista

Archiva un mensaje en tu teléfono y desaparece de la bandeja de entrada de tu portátil en tiempo real. El estado de lectura y las decisiones de IA se sincronizan de la misma manera.

Actualizaciones optimistas

Las acciones como archivar, etiquetar, marcar con estrella o marcar como leído se aplican localmente y se reflejan en la interfaz inmediatamente, antes de que el servidor las confirme. Si el servidor rechaza una acción (por ejemplo, un error de red), la interfaz revierte y muestra un error reintentable.

Esto elimina la latencia de esperar un viaje de ida y vuelta en cada interacción, haciendo que los gestos comunes se sientan instantáneos.

Carga de recursos y fuentes

El CSS crítico está incorporado en la carga útil HTML inicial; los estilos no críticos se difieren. Las fuentes se subconjuntan para los caracteres necesarios en cada idioma, reduciendo el tamaño de transferencia. La división de código basada en rutas garantiza que solo cargues el JavaScript requerido para la vista actual.

AI Emaily apunta a un Largest Contentful Paint de menos de un segundo en una conexión de banda ancha estándar y un tiempo de respuesta inferior a 100 ms para todas las interacciones dentro de la aplicación una vez cargada.

Frequently asked

Ready to try it?

Start Free Trial