Núcleo abierto, sin dependencia de proveedor
Spec: Apache License 2.0Apache License 2.0
De un vistazo
Sección titulada «De un vistazo»NextPDF es de núcleo abierto. El motor sobre el que construyes —nextpdf/core—
se publica bajo la Apache License 2.0, de modo que puedes usarlo, modificarlo y
redistribuirlo, incluso comercialmente. Pro y Enterprise son complementos
propietarios por los que pagas solo cuando quieres lo que añaden. La base es tuya
para quedártela; las capacidades avanzadas son opcionales.
Por qué importa
Sección titulada «Por qué importa»La pregunta cara con cualquier motor documental no es «¿cuánto cuesta hoy?». Es «¿qué pasa el día en que quiera marcharme?». Con un motor cerrado, ese día es un proyecto de migración: re-plataformar, re-probar, recertificar una salida que tus auditores ya habían aprobado. El coste de cambio es la dependencia, y se paga íntegro en el peor momento posible.
El núcleo abierto elimina esa pregunta por construcción. La parte de la que más dependes —el motor de renderizado, el modelo de objetos, la conformidad con los estándares— está bajo una licencia permisiva y seguirá así para la versión que adoptaste. Nunca estás a una renovación de perder el acceso al código sobre el que se construye tu producto.
La versión breve
Sección titulada «La versión breve»- El motor núcleo es Apache-2.0: úsalo, cópialo, modifícalo, redistribúyelo y úsalo comercialmente, sin restricción de uso no comercial.
- La licencia incluye una concesión expresa de patentes de los colaboradores, con una cláusula de terminación defensiva (Spec: Apache License 2.0, §3Apache License 2.0 §3).
- Pro y Enterprise son complementos propietarios. Pagas por capacidades avanzadas, nunca por el derecho a seguir usando el núcleo abierto.
- La redistribución conlleva deberes de atribución: conservar los avisos,
incluir la licencia, declarar tus cambios, propagar
NOTICE(Spec: Apache License 2.0, §4Apache License 2.0 §4). - Puedes bifurcar y distribuir el código; no puedes distribuirlo bajo el nombre o el logotipo de NextPDF (Spec: Apache License 2.0, §6Apache License 2.0 §6).
Cómo lo aborda NextPDF
Sección titulada «Cómo lo aborda NextPDF»El modelo es deliberadamente sencillo, y la sencillez es el objetivo. Hay tres cosas, y responden a tres preguntas distintas.
- Open-source corenextpdf/core under the Apache License 2.0 — use, modify, redistribute, commercialise. This is the foundation you build on, and it is yours to keep.
- Proprietary add-onsNextPDF Pro and Enterprise add advanced capabilities under a commercial license. You pay for what they add, not for continued use of the core.
- TrademarkThe NextPDF name and logo are reserved. The code license does not grant brand rights — that boundary is what keeps 'NextPDF' meaning the official software.
La Apache License 2.0 es una licencia de código abierto permisiva aprobada por la Open Source Initiative. Para el núcleo, concede amplios derechos de uso —en forma de fuente o compilada, independiente o como parte de una obra mayor— sin cláusula de no comercialidad. Puedes incluir el núcleo dentro de un producto cerrado, de pago o interno.
Conviene nombrar dos cláusulas, porque son donde «permisiva» se vuelve
«duradera». La licencia lleva una concesión expresa de patentes: los
colaboradores te conceden una licencia de patente libre de regalías sobre sus
contribuciones, y esa concesión solo se extingue de forma defensiva, si inicias
cierto litigio de patentes sobre el software
(Spec: Apache License 2.0, §3Apache License 2.0 §3). Es una protección que una
licencia escueta de «haz lo que quieras» no siempre te da. Y la redistribución
está permitida pero no exenta de obligaciones: conservas los avisos de copyright,
patente, marca y atribución existentes, incluyes la licencia, declaras los
cambios que hiciste a los archivos modificados y propagas cualquier archivo
NOTICE (Spec: Apache License 2.0, §4Apache License 2.0 §4). Honrar esos
deberes es el precio de la libertad, y es bajo.
Lo que pagas, cuando pagas, es capacidad, no continuidad. La separación es limpia: el mismo escritor de memoria acotada, el mismo modelo de objetos, la misma conformidad con los estándares vive en el núcleo, compres o no nunca nada.
| Edition | Availability |
|---|---|
| Core | Apache-2.0. The full rendering engine, object model, and PDF 2.0 output — free to use, modify, redistribute, and commercialise. This is the foundation, and it is the same engine under every edition. |
| Pro | Pro builds on the identical Apache-2.0 core and adds proprietary capabilities. It does not replace the core or change your rights to it. |
| Enterprise | Enterprise builds on the identical Apache-2.0 core and adds proprietary capabilities. It does not replace the core or change your rights to it. |
Pro y Enterprise no son de código abierto. Sus paquetes declaran
"license": "LicenseRef-NextPDF-Commercial", y sus términos viven en el NextPDF
Commercial License Agreement (Version 3.0) —no en la Apache License 2.0, y no se
infieren del núcleo abierto. Añaden cosas; no quitan nada de lo que el núcleo te
da.
Ejemplo práctico
Sección titulada «Ejemplo práctico»La frontera es visible en el lugar más ordinario que existe: tu composer.json.
Adoptar el núcleo abierto es una dependencia de un registro público.
<?php
declare(strict_types=1);
// composer require nextpdf/core//// nextpdf/core declares "license": "Apache-2.0" and ships the full// Apache License 2.0 text in its LICENSE file. This single dependency// is the open foundation — yours to use, modify, and redistribute.
use NextPDF\Core\Document;use NextPDF\Contracts\OutputDestination;
$document = Document::createStandalone();$document->setTitle('Open core, no lock-in');$document->addPage();$document->setFont('helvetica', 'B', 16);$document->cell(0, 12, 'Built on an Apache-2.0 foundation', newLine: true);
// Output uses only the open core. Nothing here is gated, time-limited,// or contingent on a paid edition. A Pro or Enterprise add-on, if you// ever choose one, layers on top of this — it does not stand between// you and the engine.$bytes = $document->output(dest: OutputDestination::String);Nada en ese programa está prestado. No hay comprobación de licencia entre tú y el motor, ni edición que tenga que estar presente para que el núcleo funcione. Si más adelante quieres una capacidad que ofrecen Pro o Enterprise, la añades. Si nunca lo haces, el núcleo sigue funcionando exactamente como hoy.
Idea equivocada habitual
Sección titulada «Idea equivocada habitual»La lectura errónea frecuente es «núcleo abierto significa que también obtengo la
marca». No es así. La Apache License 2.0 no concede ningún derecho sobre los
nombres comerciales, marcas o logotipos del licenciante más allá de la referencia
razonable y habitual al origen de la obra
(Spec: Apache License 2.0, §6Apache License 2.0 §6). Así que puedes bifurcar
nextpdf/core, modificarlo y redistribuirlo —ese es el derecho sobre el
código—, pero no puedes distribuir esa bifurcación como «NextPDF» ni bajo el
logotipo de NextPDF. Elige tu propio nombre.
Esa separación no es una trampa escondida en la generosidad. Es lo que hace que la generosidad sea segura. Una licencia permisiva puede regalar el código precisamente porque el derecho de marcas mantiene que «NextPDF» significa el software oficial y sin modificar, incluso después de que el código se bifurque. Sin la frontera, cualquier compilación alterada podría llamarse a sí misma NextPDF, y nadie podría distinguir el motor oficial del parche de otra persona. La línea protege a los usuarios, no solo a la marca. El tratamiento completo de código frente a marca vive en la página de marca registrada.
Una segunda idea equivocada es que «núcleo abierto» hace de algún modo que las ediciones de pago también sean abiertas. No lo hace. Que el núcleo sea Apache-2.0 no dice nada sobre Pro o Enterprise: esas son propietarias con independencia de la licencia del núcleo.
Límites y fronteras
Sección titulada «Límites y fronteras»El núcleo abierto es una ventaja real, expuesta con claridad, no la afirmación de que todo es gratis. Las capacidades avanzadas de Pro y Enterprise son genuinamente propietarias y genuinamente de pago; esta página no pretende lo contrario, y no hace ninguna promesa sobre los términos de esas ediciones, que viven en tu acuerdo comercial.
«Sin dependencia de proveedor» es preciso. Significa que la base sobre la que construyes está bajo una licencia permisiva y sigue siendo utilizable en tus términos. No significa que toda funcionalidad esté en el núcleo, y no significa que migrar fuera de una capacidad de Pro o Enterprise que adoptaste sea gratuito: una capacidad propietaria es, por naturaleza, una dependencia que asumiste a sabiendas. La libertad está en el núcleo.
Los deberes de atribución bajo la Apache-2.0 §4 son obligaciones, no opciones. Una redistribución que omite los avisos, deja fuera la licencia u oculta los cambios hechos a los archivos modificados es una infracción de la licencia aunque la licencia sea permisiva. Aquí la libertad viene con una lista corta y honesta de deberes.
Esta página es un resumen en lenguaje sencillo del modelo de licencias, no la
licencia en sí ni asesoramiento jurídico. Cuando este resumen y los documentos
autorizados difieran —el archivo LICENSE del paquete, y tu acuerdo comercial
para las ediciones de pago—, prevalecen esos documentos. El tratamiento completo
y vinculante está en la página de licencias.
Documentos relacionados
Sección titulada «Documentos relacionados»- Licencias — el relato autorizado, en lenguaje sencillo, de qué licencia se aplica a qué edición y qué concede cada una.
- Marca registrada y uso de marca — la frontera entre código y marca en su totalidad, con usos aceptables e inaceptables.
- La empresa detrás de NextPDF — quién posee la marca registrada y por qué un producto comercial pasó a ser de código abierto.
- Cuándo no usar NextPDF — un relato honesto de dónde se detiene el núcleo y empieza un complemento.
Glosario
Sección titulada «Glosario»- Núcleo abierto — un modelo en el que un núcleo de código abierto con licencia permisiva está rodeado de complementos propietarios de pago. El núcleo es gratuito de usar y de conservar; los complementos son opcionales.
- Apache License 2.0 — una licencia de código abierto permisiva, aprobada por la OSI. Concede amplios derechos de uso, modificación y redistribución, incluye una concesión expresa de patentes, exige atribución en la redistribución y no concede derechos de marca.
- Concesión de patentes — una licencia expresa y libre de regalías sobre las patentes de los colaboradores que cubren sus contribuciones, con terminación defensiva si litigas ciertas patentes sobre el software (Apache-2.0 §3).
- Archivo NOTICE — un archivo de atribución que, cuando está presente en la obra, debe propagarse en tu redistribución bajo la Apache-2.0 §4.
- Dependencia de proveedor — el coste de cambio que hace caro marcharse de un proveedor. El núcleo abierto la elimina para la base al licenciar el núcleo de forma permisiva.