Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
nvl-templates
nvl/templates
claude-code
media
templates
documents
laravel
Rendering
localization

Use when integrating nvl/templates document builders, versioned family variants, reusable resources, managed Media images, personalized email with CID attachments, PDF output, durable render requests or native Ownership installation in Laravel.

Install
php artisan boost:add-skill nvl/templates

Save this content to: .claude/skills/nvl-templates/SKILL.md

# NVL Templates

Use the native document/family services with an explicit actor last. The host owns controllers, routes, DTOs, business facts, private responses and mail delivery. Preserve portable `template-document` v1, `gct-template` and `urn:gct` values.

Read [usage](references/usage.md) for the complete integration sequence and examples. Use [API](references/api.md) to confirm exact signatures and native array keys; use [installation](references/installation.md) for Composer discovery, publish tags and migration ownership. Copy this entire skill tree when publishing it.

## Choose the workflow

| Need | Native entry point / usage section |
| --- | --- |
| New host and private retained bytes | [Dependencies and storage](references/usage.md#dependencies-and-storage) |
| Owned application graph | [Native Ownership](references/usage.md#native-ownership) |
| Publish React components and CSS | [React builder](references/usage.md#react-builder) |
| Shared server compiler | [Node compiler](references/usage.md#node-compiler) |
| Create, save, publish, reopen | `TemplateLifecycle`, `TemplateReader`; [documents](references/usage.md#document-lifecycle) |
| Family pins and structural variants | `TemplateFamilies`, `FamilyLifecycle`; [families](references/usage.md#families-and-structural-changes) |
| Bounded templates/families/assets and exact pins | `TemplateCatalog`; [catalogs](references/usage.md#bounded-catalogs) |
| Scoped reusable content/design | `ResourceManager`; [resources](references/usage.md#scoped-reusable-resources) |
| Import and authorize images | `TemplateAssets`; [assets](references/usage.md#managed-assets-and-private-routes) |
| Customer inputs, preview and rendering | `TemplateRenderer`; [rendering](references/usage.md#personalization-and-previews) |
| Deliver finalized email with CID bytes | [Mail handoff](references/usage.md#email-delivery-and-cid-attachments) |
| Durable HTML/email/PDF and maintenance | `RenderRequests`; [durable requests](references/usage.md#durable-renders-and-maintenance) |

All service classes above are in `Nvl\Templates\Services`. `nvl/media` is required. These workflows do not use Content blocks, Blade template definitions, assignments or the former stored-version lifecycle.

## Preserve authority and concurrency

- Bind `Nvl\Templates\Contracts\TemplateAuthorization`; default policy denies. Bind native Media policy separately. Persisted actors are reloaded; `SystemActor::Background` grants no permission by itself.
- Configure the concrete Template model before provider boot. Enter admitted native Ownership context when configured. Neither request `scope` nor descriptive `owner` data establishes authority.
- Save `TemplateReader::load()['source']` as raw authoring authority. Its `document` is a materialized preview, not replacement source. Keep exact family/resource revision pins and the server's draft `version` / `sourceChecksum` evidence.
- Review family conflicts explicitly; apply changes to the draft, then publish. A newer family never silently updates existing publications.
- Server loads trusted `facts`/`context`; customers supply only declared exposed `inputs`/`settings`. Browser preview HTML and data URLs are not delivery artifacts.
- Keep bounded byte limits, private Media identity/checksums and same-connection transactions. Existing Blade/Content data needs reviewed migration; fresh Ownership adoption is not a converter.

NVL Templates

Use the native document/family services with an explicit actor last. The host owns controllers, routes, DTOs, business facts, private responses and mail delivery. Preserve portable template-document v1, gct-template and urn:gct values.

Read usage for the complete integration sequence and examples. Use API to confirm exact signatures and native array keys; use installation for Composer discovery, publish tags and migration ownership. Copy this entire skill tree when publishing it.

Choose the workflow

Need Native entry point / usage section
New host and private retained bytes Dependencies and storage
Owned application graph Native Ownership
Publish React components and CSS React builder
Shared server compiler Node compiler
Create, save, publish, reopen TemplateLifecycle, TemplateReader; documents
Family pins and structural variants TemplateFamilies, FamilyLifecycle; families
Bounded templates/families/assets and exact pins TemplateCatalog; catalogs
Scoped reusable content/design ResourceManager; resources
Import and authorize images TemplateAssets; assets
Customer inputs, preview and rendering TemplateRenderer; rendering
Deliver finalized email with CID bytes Mail handoff
Durable HTML/email/PDF and maintenance RenderRequests; durable requests

All service classes above are in Nvl\Templates\Services. nvl/media is required. These workflows do not use Content blocks, Blade template definitions, assignments or the former stored-version lifecycle.

Preserve authority and concurrency

  • Bind Nvl\Templates\Contracts\TemplateAuthorization; default policy denies. Bind native Media policy separately. Persisted actors are reloaded; SystemActor::Background grants no permission by itself.
  • Configure the concrete Template model before provider boot. Enter admitted native Ownership context when configured. Neither request scope nor descriptive owner data establishes authority.
  • Save TemplateReader::load()['source'] as raw authoring authority. Its document is a materialized preview, not replacement source. Keep exact family/resource revision pins and the server's draft version / sourceChecksum evidence.
  • Review family conflicts explicitly; apply changes to the draft, then publish. A newer family never silently updates existing publications.
  • Server loads trusted facts/context; customers supply only declared exposed inputs/settings. Browser preview HTML and data URLs are not delivery artifacts.
  • Keep bounded byte limits, private Media identity/checksums and same-connection transactions. Existing Blade/Content data needs reviewed migration; fresh Ownership adoption is not a converter.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
elmogy/larafast
xeviant/laravel-paystack
gorilladash/laravel-website-sdk
martialbe/flysystem-oss
chondal/3312client
jeroen-g/flickr
opscale-co/nova-genbi
itsjustvita/laravel-retention
tequilarapido/trackit
gregsphotography/site-builder-filament
cabaoctavio/laravel-query-log
gregsphotography/site-builder-components
io-digital/clickatell
snowsoft/laravel-admin
oxygen/auth
relicsoftware/barakah-payment-gateway
tobya/work-with-composer
equipc/laravel-email-validator
equipc/laravel-email-database-log
adedsec/nova-translated-labels