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

Addressing Bundle Laravel Package

sylius/addressing-bundle

Sylius AddressingBundle provides sensible, fully customizable models and forms for managing addresses, countries, provinces, and flexible zones that group geographical areas for tax and shipping rules in ecommerce applications.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. borrow for the geography domain model. The package ships a complete, battle-tested data model for addresses, countries, provinces/states, and geographic zones — the entities every commerce, logistics, tax, or market-expansion feature ends up reinventing. Framing the decision as "adopt the model, own the code" rather than "adopt the dependency" is the highest-value outcome of this evaluation.
  • Zone-based tax and shipping rules. The zone abstraction (group countries and provinces into regions, then match any address against all defined zones) is the roadmap enabler behind questions like "can we support EU-VAT vs. US state-level tax?" or "can we launch tiered regional shipping without building a rules engine from scratch?" That is a capability decision, not a CRUD ticket.
  • Market expansion sequencing. Multi-level country → province support, explicitly extensible to deeper hierarchies, informs which markets we can enter, in what order, and what address capture must look like in each.
  • Checkout and account UX scoping. Bundled forms covering common address actions give a credible baseline for sizing checkout-address rework — a yardstick, not the UI we'd ship.
  • Custom-field strategy on the address entity. The documented extension point (add fields, or split into multiple address models for billing vs. shipping) answers whether customer-specific attributes — delivery instructions, VAT IDs, company registration numbers — are a config change or a schema fork.
  • Architecture principle: decoupled domain components. The bundle's model-first, framework-light design is a citable reference when deciding whether address logic lives in a shared internal package or gets reimplemented per product.

When to Consider This Package

Caveats to surface before any adoption conversation:

  • It is not a Laravel package. This is a Symfony2 bundle — DI-registered services, Doctrine ORM mappings, Symfony Form types, Twig views. There is no service provider, no config publishing, no Eloquent integration, no migration path. In a Laravel codebase you are copying concepts, not consuming a dependency.
  • It is explicitly [READ-ONLY]. The functionality has been folded into Sylius core; this repository is frozen. That is a lifecycle signal — no new features, no upstream fixes, and the maintenance burden lands on us.
  • Adoption is effectively zero. 33 stars, 0 dependents, maturity rated at README level. No production validation to point at, no community safety net.
  • License is clean. MIT removes all friction for copying schema shapes and model designs.

Consider it when:

  • You need a reference design — entity boundaries, province hierarchy, zone-matching semantics — and want to compress discovery from weeks to days.
  • The actual hard problem is multi-level geography plus zone matching for tax/shipping eligibility, not framework plumbing.
  • You are on Sylius/Symfony and want the canonical vendor model — though in that case, target Sylius core directly rather than this archived repo.
  • You are in discovery mode, where a well-considered MIT model beats a maintained but opinionated one.

Look elsewhere when:

  • The target stack is Laravel. Use a maintained country/state dataset plus a thin zone layer of your own.
  • You need a supported dependency — security patching, SLAs, vendor accountability. A read-only bundle cannot provide this.
  • Requirements are simple: a flat address table and a country list. Zone/province abstraction is over-engineering and will slow delivery.
  • You need rate calculation itself. This bundle models geography and zone membership; it does not compute tax or shipping rates. Stakeholders must not conflate the two.

How to Pitch It (Stakeholders)

To executives: This is a well-designed but effectively frozen open-source component for managing addresses, countries, and geographic zones — the plumbing behind tax regions, shipping bands, and market expansion. It is MIT-licensed and free, but archived, with negligible adoption, and it targets Symfony2 rather than our Laravel stack. Recommendation: treat it as a design asset, not a dependency. We can lift its data model in days instead of spending weeks designing one, while keeping full ownership of our code. No license cost, no vendor lock-in, and it removes a meaningful chunk of discovery from the geography-rules epic.

To engineering: Do not composer require this into a Laravel service. It's a Symfony2 bundle marked read-only, with the functionality now absorbed into Sylius core; adopting it means inheriting an orphan and fighting a dependency graph for zero runtime benefit. What's worth taking is the model: a country → province hierarchy deliberately extensible to deeper levels, and a zone abstraction where any address is matched against every defined zone. That matching contract is the valuable part — it decouples "where is this address" from "what tax or shipping rule applies," so we can add regions without touching the rules engine. Suggested move: port the entity shapes and zone-matching semantics into our own module with tests, and source ISO country/subdivision reference data from a maintained dataset rather than fixtures.

To product/design: The bundle ships forms covering common address actions, giving us a credible baseline for checkout and account-address UX — useful for scoping, not for shipping as-is. Two consequences. First, market-specific address formats (province required vs. optional varies sharply by country) is real work either way and deserves its own backlog item. Second, "zones" here only group and match — the tax and shipping rate logic sits on top and is ours to build, so the geographic-rules epic should be sized in two halves, and the second half is the larger one.

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.
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel
draftsmaninc/draftsman
square-bit/laravel-volition
himito/laravel-mailman
htinlynn/genius-helper
maco-studios/hephaestus
elmogy/larafast
xeviant/laravel-paystack
gorilladash/laravel-website-sdk