Construya cualquier cosa. Sin bifurcar el core.

AcelleMail es una plataforma de email marketing en Laravel 11+ con una superficie de extensibilidad que va mucho más allá de los callbacks. Drivers de envío, pasarelas de pago, agentes de IA, páginas de administración a medida, slots de UI a nivel de página, endpoints REST, listeners de ciclo de vida: cada uno de ellos se entrega como un plugin autónomo bajo su propio namespace. Esta es la referencia completa: once análisis a fondo, fundamentados en el código contra las rutas canónicas en storage/app/plugins/, App\Library\HookManager y app/Model/Plugin.php.

Empiece por los fundamentos ↓ Hello World en 5 min
Puntos de extensión
14
Patrones de hook
4
Páginas de análisis a fondo
11
Tiempo de lectura
~3h
Fundamentado en código
100%

Cómo usar esta documentación

Lea en orden si está empezando desde cero: cada página se apoya en la anterior. Caiga en una sola página desde un buscador si ya sabe lo que necesita: cada análisis a fondo se sostiene por sí solo, con su propio breadcrumb, tabla de contenidos sticky y navegación prev/next.

Cada afirmación en cada página se rastrea hasta un archivo fuente bajo el árbol de docs de plugins de la plataforma (docs/plugin/, docs/sending-server-polymorphism/, docs/payment-order-plan-subscription-saas/) o la implementación viva en storage/app/plugins/Aurius/. Si una afirmación no se puede citar, se elimina, no se parafrasea.

Tiempo de lectura, de principio a fin: ~3 horas. Para entregar un plugin real, planifique una sola tarde: la muestra Hello World tarda cinco minutos en hacer el scaffold, y el ejemplo trabajado más largo (un driver de envío con Postal MTA) ronda la hora desde plugin:init hasta un test de integración exitoso.

02 — CONSTRUCCIÓN

Entregue una funcionalidad real.

Ejemplos trabajados para los cuatro patrones más preguntados: un nuevo driver de envío (Postal MTA), una pasarela de pago regional (Paddle), una superficie de UI de administración a medida (el chatbox de Aurius) y tablas de base de datos aisladas del plugin.

sending-drivers En vivo

Drivers de envío — patrón completo de plugin

Entregue un backend MTA nuevo sin bifurcar el core. El contrato register_sending_server_driver, la clase del driver + 9 marcadores de capability, el pipeline de validación, la blade de conexión, el controlador de webhook, la identidad/warmup. Trabajado de principio a fin contra la revisión estática del plugin de Postal MTA.

19 min de lectura Leer →
payment-gateways En vivo

Pasarelas de pago — contratos de Cashier

Modelo pull, sin webhook. El registro BillingManager, cuatro interfaces de capability, Paddle como ejemplo trabajado, la máquina de estados PaymentIntent y cinco reglas de disciplina de frontera con el proveedor de la lección del valor por defecto de moneda de TBANK.

17 min de lectura Leer →
ui-injection En vivo

Inyección de UI — layouts, barra lateral, slots de página

Tres hooks REGISTRY de layout (layout.head.assets, layout.body.before_close, admin.sidebar.groups) más el contrato page.{controller}.{action}.{slot}. El patrón de la burbuja del chatbox de Aurius de principio a fin, la variante FILTER para redirecciones y seis antipatrones.

16 min de lectura Leer →
database-models En vivo

Base de datos y modelos — aislados por plugin

Migraciones bajo <plugin>/database/migrations/, nombres de tabla prefijados por vendor, el ciclo de activate-ejecuta / delete-revierte, claves foráneas a tablas del core, el flag $keepData y la muestra de catorce migraciones de Aurius.

13 min de lectura Leer →

Filosofía de diseño

El core declara puntos de extensión. Los plugins reaccionan.
El core nunca sabe que su plugin existe.

Inversión de dependencias

El código del core nunca lo importa un plugin, y un plugin nunca lo importa el core. El sistema de Hooks se sitúa entre ambos como único contrato. Actualice el core y su plugin sigue funcionando, siempre que el nombre y la firma del hook se mantengan estables, cosa que marcamos con versión.

Cuatro patrones, no más

REGISTRY, EVENT, BEHAVIOR, FILTER: los únicos verbos que habla el sistema de Hooks. La semántica de conflictos es explícita por patrón: REGISTRY fusiona, EVENT dispara a todos, FILTER encadena y BEHAVIOR es exclusivo (dos llamantes lanzan excepción de inmediato, sin sobrescritura silenciosa).

Su namespace, para siempre

Los plugins viven bajo MyVendor\MyPlugin\, completamente aislados del namespace de la plataforma core. Compóngalos, véndalos, póngalos en marca blanca, bifúrquelos: su plugin es suyo. La Licencia Extendida concede la redistribución comercial.

Fuente de verdad: el código

Cada página en este árbol de docs enlaza la ruta de archivo canónica de la que se rastreó. Si una doc no coincide con el código, gana el código: abra un issue y actualizamos la doc, no al revés. Sin copia-pega legacy, sin APIs aspiracionales.

Abra el código fuente. Extienda la plataforma.

PHP completo y sin cifrar. Actualizaciones de por vida. El sistema de Hooks. Plugins reales en producción de los que aprender. Licencia de pago único: sin suscripciones, sin tarifas por suscriptor, sin secuestro de namespaces.

Comprar Licencia Extendida — $199 Volver a la landing para desarrolladores