npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

plugin-carbone-template-manager

v1.1.0

Published

Manage document templates rendered by an external Carbone.io service: upload templates, auto-extract placeholders, version & rollback, test playground, monitoring, MD5 cache, REST API, workflow instruction.

Downloads

672

Readme

Carbone Template Manager

Manage document templates rendered by an external Carbone.io service.

Features

  • Template management — upload .docx, .xlsx, .pptx, .odt, .ods, .odp; CRUD metadata; per-role ACL.
  • Auto placeholder extraction — parse {d.xxx} Carbone tags to a JSON schema (loops, formatters, complement scope).
  • Versioning + rollback — every upload creates a new version; one-click rollback; schema diff between versions.
  • Test playground — JSON editor + sample-data generator; preview rendered file inline.
  • Render APIPOST /api/carboneTemplates:renderById and :renderDirect; output to PDF / DOCX / XLSX / HTML / ODT / TXT / CSV / JPG / PNG.
  • MD5 cache — keyed on templateId | versionId | input | format; output stored via plugin-file-manager (any registered storage: local, S3, SFTP, OSS …).
  • Monitoring dashboard — call count, latency p95, cache hit ratio, error rate, replay logs.
  • Workflow integrationcarbone-render instruction for plugin-workflow.

Architecture

NocoBase ◄──HTTP──► Carbone.io container (Docker / k8s)
   │                    │
   ├ stores templateId  │ stores actual template files (SHA-256 keyed)
   ├ versions metadata  │ renders documents
   └ render logs/cache  │ converts to PDF via LibreOffice

The actual binary template lives inside Carbone; NocoBase stores only the SHA-256 carboneTemplateId plus a backup copy of the original file via plugin-file-manager (so rollback works even if Carbone evicts the template).

Carbone deployment

A ready-to-use service block has been added to:

  • docker/production-ha/docker-compose.yml — service name carbone, port 4000.
  • k8s/production-ha/nocobase-ha.yaml — Deployment + Service + PVC + Secret keys.

Image: carbone/carbone-ee (free tier when no license is provided).

After the container is up, open Plugin Settings → Carbone Template Manager and set:

| Field | Default | | --- | --- | | Endpoint | http://carbone:4000 (Docker) / http://carbone.nocobase.svc.cluster.local:4000 (k8s) | | API Token | from CARBONE_EE_STUDIO_TOKEN env var | | Carbone version | 4 | | Output / Cache / Backup storage | choose any registered storage from plugin-file-manager |

Click Test connection to verify.

ACL snippets

| Snippet | Grants | | --- | --- | | pm.plugin-carbone-template-manager.templates | template CRUD + upload + parse + download | | pm.plugin-carbone-template-manager.render | renderById, renderDirect, test | | pm.plugin-carbone-template-manager.versions | list / rollback / diff schema | | pm.plugin-carbone-template-manager.monitoring| logs / cache management | | pm.plugin-carbone-template-manager.settings | endpoint, token, storage selectors |

Granular per-template permission is achieved through standard NocoBase collection-level data scopes on carboneTemplates.

License

Apache-2.0.