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

Oxymel Laravel Package

nb/oxymel

Oxymel is a lightweight, chainable XML builder for PHP. Build well-formed XML documents with a fluent API instead of string concatenation, handling elements, attributes, text, and nesting cleanly.

Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for XML output surfaces. Oxymel is a ~single-purpose fluent builder, not a platform. The real decision it informs is "do we add a dependency, write a 60-line internal XmlBuilder helper, or reach for XMLWriter/DOMDocument?" — and it makes the "buy" side unusually cheap to evaluate (and cheap to reverse).
  • Roadmap scoping for XML-emitting features. Concrete, common Laravel surfaces this de-risks: sitemap generation, RSS/Atom feeds, product/channel feeds (Google Merchant Center, Rightmove/Zoopla-style portal feeds), SOAP or XML payloads to ERP/legacy partners, SVG/chart export, and spreadsheet/Office Open XML output. If two or more of these are on the roadmap, the case strengthens; if one is, it's likely over-engineering.
  • Enterprise/partner integration strategy. XML-speaking partners (logistics, payments, e-invoicing like UBL/Peppol/Factur-X, healthcare, government gateways) are where this decision gets made. Oxymel helps you ship a spike fast to validate a partner contract before committing to a heavier integration layer.
  • Prioritisation of "readability debt." The pitch here is developer experience — fluent, nesting-visible code that a PM can actually read in a PR. That's a real (if modest) velocity argument when a team will touch XML in many small places rather than one big one.
  • Lock-in / exit-cost assessment. Because it's a thin string builder with no framework coupling, the switching cost is days, not sprints. That makes it a low-blast-radius bet you can approve at team level rather than architecture-board level.
  • Not a decision it supports: schema-strict output (XSD validation), high-volume streaming, or anything where correctness is contractually audited. Those need XMLWriter with validation or a dedicated e-invoicing library — do not let this package appear in a compliance conversation.

When to Consider This Package

Adopt (with guardrails) when:

  • You need to emit small-to-medium, well-formed XML in a handful of places, and code readability is worth more than features.
  • Your team is small and you want to avoid pulling in a larger XML suite (Sabre\Xml) for what is essentially string assembly.
  • You will wrap it behind your own interface (XmlWriter-style contract in your domain layer) so the dependency never leaks into business logic.
  • You're doing a time-boxed integration spike where speed matters and replacement is acceptable.

Look elsewhere when:

  • Maturity risk dominates. 22 stars and a low health score means: verify PHP 8.x and Laravel 11/12 compatibility yourself, check the last commit date, confirm it has tests, and know that you are likely the maintainer of last resort. No service provider or facade means no framework integration to lean on either.
  • You need streaming / large documents — a string-building approach holds the whole document in memory; use XMLWriter.
  • You need schema validation, namespaces/SOAP envelopes, or WSDL — use DOMDocument/XMLWriter or a dedicated SOAP client.
  • Security-sensitive parsing is involved — this is a generator, not a parser; XXE protections are someone else's problem.
  • You already have spatie/laravel-sitemap or spatie/laravel-feed in the stack; for those two use cases, purpose-built packages are the better buy.
  • Compliance/audit applies (e-invoicing, regulatory reporting): correctness and validation beat elegance every time.

How to Pitch It (Stakeholders)

Executives: This is a small, easily reversible dependency that shortens delivery on XML output work — sitemaps, feeds, partner integrations — by making the code simpler to write and review. Cost is negligible and switching cost is days, so it's a low-risk team-level decision, not an architecture commitment. The caveat is maintenance: with a very small community, we should treat it as our code and wrap it so we can swap it out without touching product logic. Recommend approving for non-regulated, low-volume XML output only.

Engineering: Fluent, nesting-obvious API; pleasant for sitemaps, feeds, and partner payloads; no framework coupling and no extension dependency. It is a string builder, so: no streaming, no XSD validation, no namespace/SOAP sophistication, and unknown Laravel/PHP-version compatibility that we must verify before merging. Proposed guardrail: one internal XmlBuilder contract, Oxymel as a single implementation behind it, and a rule that it never appears in domain code or in any compliance-adjacent path. If we outgrow it, we swap the implementation to XMLWriter in one PR.

Recommendation: Approve as a scoped, wrapped utility for readability-sensitive, low-volume XML generation; reject for e-invoicing, SOAP/WSDL, large exports, and anything requiring schema validation. Re-evaluate if usage spreads beyond two or three call sites — at that point, a purpose-built package or a first-party helper is the better buy.

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