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

Opentbs Bundle Laravel Package

mbence/opentbs-bundle

A Symfony bundle that integrates OpenTBS, the PHP template engine for merging data into OpenOffice and Microsoft Office documents such as docx, xlsx, pptx, and odt files. Generate dynamic reports and documents from templates using simple tags.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Document-generation feature scope: Informs whether to build template-driven DOCX/ODT/XLSX/PPTX output (invoices, contracts, statements, offer letters, reporting packs) into the product, and which file formats to commit to on the roadmap.
  • Build vs. buy vs. wrap: The strategic value is the underlying OpenTBS engine, not this bundle. The decision this supports is "adopt the OpenTBS approach (Office files as templates + PHP merge) and wrap it in-house," rather than "add this dependency."
  • Template ownership model: Supports the decision to let business users, legal, or finance own document layouts in Word/OpenOffice while engineers own only the data contract — a meaningful reduction in release coupling for document changes.
  • Runtime architecture: Supports choosing a pure-PHP merge path over a LibreOffice/Word automation service or a hosted document API, which affects infrastructure cost, deployment topology, and vendor risk.
  • Framework fit: Clarifies that this specific package is a Symfony bundle, not a Laravel package — so for a Laravel codebase it is evidence for the engine pattern, not a shippable dependency.
  • Risk posture on legacy integrations: Archived status (last release 2016), 26 stars, and zero dependents support a "reference/pattern only, do not adopt as-is" decision for anything customer-facing or long-lived.

When to Consider This Package

Consider the OpenTBS approach when:

  • Documents must be authored and maintained by non-developers in Word or LibreOffice, with placeholders, loops, and conditional blocks.
  • You need native Office output (DOCX/XLSX/PPTX/ODT) rather than HTML-to-PDF approximations, and layout fidelity matters.
  • You want to avoid running LibreOffice headless or a Windows/Word automation tier in production.
  • Output volume is moderate and generation can happen synchronously or in a queue worker, with no hard sub-second latency requirement.
  • You can accept LGPL-style obligations and pin/vendor the library.

Consider this bundle specifically only when:

  • You are on a legacy Symfony 2/3 application that already standardizes on bundles and you need the smallest possible integration surface — and even then, vendor/fork it and treat it as frozen.

Look elsewhere when:

  • You are on Laravel. There is no Laravel integration here; use the OpenTBS/TinyButStrong library directly behind a small service class, or pick a maintained DOCX library (PhpWord) or a document service (Gotenberg, Carbone).
  • You need active maintenance, security patching, PHP 8.x guarantees, or a supported dependency — this bundle is archived and unmaintained.
  • Requirements are PDF-first, high-volume, pixel-perfect, or template formats are complex enough to need a real rendering engine.
  • You need a vendor SLA, or your security review rejects abandoned packages (it should, for this one).

How to Pitch It (Stakeholders)

To executives: Document generation is a recurring ask across billing, HR, and customer onboarding. The OpenTBS model lets the business own document templates in Word while engineering only supplies data — faster turnaround on document changes and no per-document licensing. The concept is sound and cheap; this particular package is not the product. It is archived, Symfony-only, and has effectively no adoption, so the recommendation is to adopt the pattern with an in-house wrapper, not the dependency.

To engineering: The bundle is a thin Symfony DI wrapper around OpenTBS, last released in 2016 with zero dependents. Do not add it. If we pursue Office-template generation, integrate the underlying OpenTBS library directly behind a single DocumentRenderer interface, pin the version, and cover it with contract tests on our templates. If we are on Laravel, that is the only sane path anyway. Budget roughly a sprint for the wrapper, template fixtures, and a safe rendering sandbox; treat template files as versioned assets with their own review process.

Bottom line: High conceptual value, low package value. Use it as a reference implementation and a signal that the OpenTBS approach is viable; do not take it as a dependency.

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.
gmostafa/php-graphql-client
xeviant/paystack
snowsoft/faker
meditationsteps/blogetc
animalyoung/laravel-influxdb
onix-solutions/sms-telera
lonely-lights/prosetta
oxygen/data
oxygen/core
jengo/base
xiloryx/log-collector
a21ns1g4ts/filament-stripe
la-php/laravel-admin
artisan-build/community-prompts
vleroy/smart
ayles-software/laravel-australian-public-holidays
cboxdk/laravel-id-spatie
cboxdk/laravel-id-billing
cboxdk/laravel-id-billing-bridge
simple-as-fuck/php-performance-log