Docs/ Platform & apps

Performance et local-first

Interactions en moins de 100 ms grâce au cache local-first et aux listes virtualisées.

AI Emaily est conçu autour d'une architecture local-first : votre boîte de réception s'affiche depuis un cache local avant que le réseau ne réponde, puis se synchronise en arrière-plan — rendant les interactions instantanées même sur les connexions lentes.

Cache de métadonnées local

Lorsque vous ouvrez votre boîte de réception, AI Emaily s'affiche depuis un cache de métadonnées stocké localement — expéditeur, objet, date, état de lecture, étiquettes — avant même qu'un seul octet réseau ne soit retourné. La réponse du serveur arrive peu après et tous les changements (nouveaux e-mails, mises à jour de statut) sont fusionnés silencieusement.

Ce mécanisme signifie que la boîte de réception n'est jamais dans un état de chargement vide. Même sur un réseau congestionné, vous pouvez commencer le tri immédiatement.

Cache vs. mode hors connexion

Le cache de métadonnées est une structure en mémoire et en stockage de session, pas un cache disque persistant. Il accélère le chargement ; pour une lecture véritablement hors connexion, consultez 'PWA installable et hors connexion'.

Listes virtualisées

Quel que soit le nombre de fils dans une boîte aux lettres, le DOM ne contient jamais que les lignes visibles dans le viewport plus un petit tampon de débordement. Les lignes hors du viewport sont recyclées au fur et à mesure du défilement.

Cela maintient la fluidité de défilement et la consommation mémoire constante — une boîte aux lettres de 50 000 fils se comporte de manière identique à une boîte de 50 fils.

Ce que la virtualisation signifie en pratique
Fils dans la boîte de réception50 000
Nœuds DOM rendus à tout moment~40–60 lignes
Croissance mémoire à mesure que la boîte granditConstante
Performance de défilementObjectif 60 fps

Synchronisation en temps réel

AI Emaily maintient une connexion en temps réel persistante (via Appwrite Realtime) afin que les nouveaux e-mails, les modifications d'étiquettes et les mises à jour de l'état de lecture se propagent sur toutes les surfaces ouvertes à l'instant où ils sont enregistrés sur le serveur.

Il n'y a pas d'intervalle d'interrogation. La boîte de réception se met à jour en direct — un nouveau message apparaît dans votre liste de fils quelques instants après son arrivée, sans nécessiter d'actualisation.

Plusieurs appareils, une seule vue

Archivez un message sur votre téléphone et il disparaît de la boîte de réception de votre ordinateur en temps réel. L'état de lecture et les décisions IA se synchronisent de la même façon.

Mises à jour optimistes

Les actions comme archiver, étiqueter, ajouter une étoile ou marquer comme lu sont appliquées localement et reflétées dans l'interface immédiatement — avant que le serveur ne les confirme. Si le serveur rejette une action (par exemple en cas d'erreur réseau), l'interface annule et affiche une erreur avec option de réessayer.

Cela élimine la latence d'attente d'un aller-retour réseau à chaque interaction, rendant les gestes courants instantanés.

Chargement des ressources et polices

Le CSS critique est intégré dans le payload HTML initial ; les styles non critiques sont différés. Les polices sont sous-ensemblées aux caractères nécessaires pour chaque langue, réduisant la taille de transfert. La division de code par route garantit que vous ne chargez que le JavaScript requis pour la vue actuelle.

AI Emaily vise un Largest Contentful Paint inférieur à une seconde sur une connexion haut débit standard et un temps de réponse inférieur à 100 ms pour toutes les interactions dans l'application une fois chargée.

Frequently asked

Ready to try it?

Start Free Trial