Correo rápido
Cliente de correo electrónico basado en web simple, moderno, liviano y rápido.
La bifurcación drásticamente mejorada y segura de la edición RainLoop Webmail Community.
Agradecemos al equipo de RainLoop por crear un excelente producto PHP 5 que fue bueno en el pasado.
Requisitos del sistema actualizados, rendimiento ágil, instalación y actualización sencillas, no se requiere base de datos: todo esto hace de SnappyMail una buena opción.
Para obtener más información sobre el producto, visite snappymail.eu.
Información sobre la instalación del producto, consulte la página wiki.
Y no olvides leer la Wiki completa.
Licencia
SnappyMail se publica bajo la LICENCIA PÚBLICA GENERAL GNU AFFERO Versión 3 (AGPL) . http://www.gnu.org/licenses/agpl-3.0.html
Copyright (c) 2020 - 2024 SnappyMail Copyright (c) 2013 - 2022 RainLoop
Modificaciones
Esta bifurcación de RainLoop tiene los siguientes cambios:
- Compatible con privacidad/GDPR (no: Social, Gravatar, Facebook, Google, Twitter, DropBox, X-Mailer)
- El administrador usa contraseña_hash/contraseña_verify
- Intentos fallidos de autenticación escritos en syslog
- Se agregaron instrucciones de Fail2ban
- ES2020
- Se requiere PHP 7.4+
- Se requiere extensión PHP mbstring
- PHP reemplazó pclZip con PharData y ZipArchive
- modo oscuro
- Se agregó una opción para eliminar los colores de fondo/fuente de los mensajes para el "modo oscuro" real
- Se eliminó BackwardCapability (clase RainLoopAccount)
- Se eliminó ChangePassword (reimplementado como complemento)
- Se eliminó el soporte POP3.
- Se eliminó el soporte de video de fondo.
- Se eliminó Sentry (software de monitoreo de aplicaciones y seguimiento de errores)
- Eliminado Spyc yaml
- Se eliminó OwnCloud
- Se reemplazó gulp-uglify con gulp-terser
- CRLF => finales de línea LF
- Incrustar boot.js y boot.css en index.html
- Eliminación del código JavaScript antiguo (las cosas son nativas hoy en día)
- Se agregó el editor HTML Squire modificado como reemplazo de CKEditor
- Sabre/VObject actualizado
- Dividir el código JavaScript específico del administrador del código de usuario
- Dividir el código JavaScript específico de Sieve del código de usuario
- Reanimador JSON
- Mejor gestión de la recolección de basura de la memoria
- Trabajador de servicio agregado para notificaciones
- Se agregó un editor avanzado de scripts de Sieve.
- Archivos de idioma reducidos
- Paquete web reemplazado con paquete acumulativo
- Sin detección de agente de usuario (use el ancho del dispositivo)
- Se agregó soporte para cargar complementos como .phar
- Se reemplazó la antigua biblioteca Sabre
- Los contactos de la libreta de direcciones son compatibles con MySQL/MariaDB utf8mb4
- Se agregaron comprobaciones de encabezados de solicitud de obtención de metadatos
- Tamaño DOM excesivo reducido
- Soporte para el software colaborativo Kolab
- Admite muchos más RFC IMAP
- Admite Sodium y OpenSSL para cifrado
- Soporte PGP mucho mejor
Navegadores compatibles
Esta bifurcación utiliza versiones reducidas/simplificadas de scripts y no es compatible con Internet Explorer ni Edge Legacy. Los compatibles son:
- Cromo 80+
- Borde 80+
- Firefox 78+
- Ópera 67+
- Safari 13.1+
Eliminación de JavaScript antiguo
El resultado es un código de descarga más rápido y más pequeño (bueno para redes móviles).
- Se agregó dev/prototype.js para algunas características adicionales.
- Jua.js modificado para que no tenga jQuery
- Autolinker reemplazado con detección simple de https/correo electrónico
- Se reemplazó momentToNode con HTML5
<time>
adecuado - Se reemplazaron los oyentes de cambio de tamaño con ResizeObserver
- Se reemplazó bootstrap.js con reemplazo directo nativo
- Se reemplazó dev/Common/ClientStorageDriver/* con polyfill de objetos de almacenamiento web
- Se reemplazó *Ajax con clases *Fetch porque usamos la API Fetch, no jQuery.ajax
- Se reemplazó knockoutjs 3.4 con un 3.5.1 modificado.
- Se reemplazó la ordenación nocaut con arrastrar y soltar HTML5 nativo
- Se reemplazó simplestatemanager con CSS @media
- Se reemplazó inputosaurus con código propio.
- Keymaster reemplazado con su propio controlador de atajos
- Se reemplazó OpenPGP.js v2 con OpenPGP.js v5
- Eliminado ifvisible.js
- Pikaday eliminado
- Subrayado eliminado
- Polyfills eliminados
- Modernizador eliminado
- Nanodesplazamiento eliminado
- Galería de luces eliminada
- jQuery eliminado
- Eliminado jquery-ui
- Eliminado jquery-scrollstop
- Se eliminó jquery-mousewheel
- Se eliminó matchmedia-polyfill
- Momentjs eliminados (use Intl)
- Opentip eliminado (use CSS)
- Se eliminó el código no comunitario (también conocido como Prem/Premium/Licencia)
- ProgresoJS eliminado
RainLoop 1.17 y SnappyMail
js/* | bucle de lluvia | Rápido |
---|
administrador.js | 2.170.153 | 84.925 |
aplicación.js | 4.207.787 | 447.263 |
arranque.js | 868.735 | 4.343 |
libs.js | 658.812 | 233.728 |
tamiz.js | 0 | 91.418 |
polifills.js | 334.608 | 0 |
trabajador de servicio.js | 0 | 285 |
TOTAL | 8.240.095 | 861.962 |
js/min/* | bucle de lluvia | Rápido | RL gzip | SM gzip | RL brotli | SM brotli |
---|
administrador.min.js | 256.831 | 41.719 | 73.606 | 14.022 | 60.877 | 12.567 |
aplicación.min.js | 515.367 | 202.101 | 139.456 | 68.505 | 110.485 | 58.481 |
arranque.min.js | 84.659 | 2.231 | 26.998 | 1.271 | 23.643 | 1.067 |
libs.min.js | 584.772 | 110.646 | 180.901 | 39.518 | 155.182 | 35.207 |
tamiz.min.js | 0 | 45.504 | 0 | 11.131 | 0 | 9.917 |
polyfills.min.js | 32.837 | 0 | 11.406 | 0 | 10.175 | 0 |
Usuario TOTAL | 1.217.635 | 314.978 | 358.761 | 109.294 | 299.485 | 94.755 |
TOTAL usuario+tamiz | 1.217.635 | 360.482 | 358.761 | 120.425 | 299.485 | 104.672 |
administrador TOTAL | 959.099 | 154.596 | 292.911 | 54.811 | 249.877 | 48.841 |
Para un usuario, es aproximadamente un 66 % más pequeño y más rápido que el RainLoop tradicional.
cambios CSS
- Resuelva las "características" eliminadas de jQuery con código CSS nativo
- Los temas funcionan en modo móvil.
- Corrección de errores de reglas CSS no válidas/en conflicto
- Usar caja flexible
- Usar cuadro de borde
- Divida app.css para tener admin.css separado
- Eliminar el 'flotador' de la vieja escuela
- Eliminar CSS no utilizado
- Eliminado html.no-css
- Se eliminó dev/Styles/Cmd.less
- Se eliminó dev/Styles/Scroll.less
- Se eliminó Internet Explorer de normalize.css
- Se eliminó node_modules/opentip/css/opentip.css
- Se eliminó node_modules/pikaday/css/pikaday.css
- Se eliminaron proveedores no utilizados/bootstrap/less/*
- Proveedores eliminados/jquery-nanoscroller/nanoscroller.css
- Proveedores eliminados/jquery-letterfx/jquery-letterfx.min.css
- Proveedores eliminados/Progress.js/minified/progressjs.min.css
- Se eliminó gulp-autoprefixer
css/* | bucle de lluvia | Rápido | RL gzip | SM gzip | SM brotli |
---|
aplicación.css | 340.331 | 85.073 | 46.946 | 17.792 | 15.210 |
aplicación.min.css | 274.947 | 68.272 | 39.647 | 15.615 | 13.636 |
arranque.css | | 1.326 | | 664 | 545 |
arranque.min.css | | 1.071 | | 590 | 474 |
administrador.css | | 30.880 | | 7.045 | 6.127 |
administrador.min.css | | 24.959 | | 6.368 | 5.615 |
PGP
RainLoop usa el antiguo OpenPGP.js v2. SnappyMail v2.12 usa OpenPGP.js v5, GnuPG y Mailvelope. SnappyMail puede usar y generar claves ECDSA y EDSA, mientras que RainLoop no lo hace.
Dado que SnappyMail intenta lograr la mejor experiencia móvil, bifurcó OpenPGP.js para eliminarlo.
- eliminar todos los Node.js no utilizados
- eliminar toda la compatibilidad con navegadores antiguos. Consulte https://github.com/the-djmaze/openpgpjs para conocer el desarrollo.
AbiertoPGP | bucle de lluvia | Rápido | RL gzip | SM gzip | RL brotli | SM brotli |
---|
openpgp.min.js | 330.742 | 546.165 | 102.388 | 169.207 | 84.241 | 138.688 |
openpgp.trabajador | 1.499 | | 824 | | 695 | |
Squire y CKEditor
La implementación de Squire aún no es 100% compatible, pero muestra la enorme sobrecarga de CKEditor.
Todavía TODO:
- soporte para tablas (¿realmente necesario?!?)
| normal | mín. | zip | mingzip |
---|
escudero | 122.321 | 41.906 | 31.867 | 14.330 |
editor | ? | 520.035 | ? | 155.916 |
CKEditor que incluye las 7 solicitudes de recursos (css, idioma, complementos, íconos) es 633,46 KB / 180,47 KB (gzip).