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

Laravel Flysystem Oss Laravel Package

zing/laravel-flysystem-oss

A Laravel Flysystem adapter for Alibaba Cloud OSS that lets you use Laravel's Storage API with OSS buckets for uploading, reading, and managing files through familiar filesystem methods.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for object storage in China-facing products. This package is the glue between Laravel's Storage facade and Alibaba Cloud OSS. Choosing it means "buy" only for the ten lines of integration: the actual infrastructure commitment (OSS vs. S3-compatible alternatives) is the real decision, and this package makes OSS a one-config-line swap rather than a bespoke SDK integration.
  • Roadmap sequencing for platform/runtime upgrades. Release 2.8.1 explicitly adds support for Laravel 13 and PHP 8.5, plus PHPUnit 12 in the test matrix. That converts "upgrade Laravel" from a blocked-by-dependency work item into a schedulable one. If your roadmap has a framework upgrade in the next two quarters, this is a green light for the storage layer specifically.
  • Feature feasibility for media/file-heavy surfaces. Avatar uploads, invoice/document attachment, product imagery, user-generated content, export dumps — any roadmap item that writes files can target OSS without a custom service layer, because the adapter exposes the standard Flysystem API (put, get, url, temporaryUrl, streams).
  • Multi-region / data-residency commitments. OSS buckets are region-scoped; because this is a config-driven driver, "serve Chinese users from a mainland bucket, everyone else from S3" is a config concern rather than an architecture rewrite. Useful for market-entry decisions.
  • Migration and exit strategy. Because this wraps Flysystem rather than reinventing it, the codebase stays portable: swapping back to S3 or GCS is largely a filesystems.php change. That lowers the switching cost of the cloud vendor decision and should be stated as such when the vendor choice is debated.
  • Test/infrastructure spend. PHPUnit 12 support means the adapter remains verifiable on the current test toolchain; it costs you nothing to keep it covered in CI.

When to Consider This Package

Adopt when all of the following hold:

  • You are on Laravel and already using (or willing to use) the Storage facade / Flysystem abstraction for file operations.
  • Alibaba Cloud OSS is your chosen or required object store — typically because of mainland-China latency, ICP/compliance requirements, or an existing Alibaba Cloud account and billing relationship.
  • You want signed/temporary URLs and standard driver semantics without maintaining your own adapter.
  • You need confidence on framework currency: 2.8.1 covers Laravel 13, PHP 8.5, and PHPUnit 12, and fixes scheme-key configuration handling — so it is a reasonable target for teams planning an imminent upgrade.

Look elsewhere when:

  • You are not on Alibaba Cloud. S3, GCS, Azure Blob, Cloudflare R2, and MinIO all have first-party or widely-adopted Laravel drivers. There is no reason to route through an OSS adapter.
  • You need vendor-managed support or an SLA. This is a single-maintainer community package. If file storage is business-critical and you cannot absorb a stalled release, budget for a fork-and-maintain contingency or wrap it behind your own thin interface.
  • You need advanced OSS capabilities that a Flysystem adapter does not surface — image processing, lifecycle/archival tiering, cross-region replication management, bucket policy administration. Those belong in Terraform/console/SDK code, not the storage driver.
  • Your team isn't on Laravel. Outside Laravel the package adds nothing; use the official Alibaba Cloud OSS PHP SDK directly.
  • You require a guaranteed deprecation/support policy. Releases here are largely dependency bumps; there is no published LTS or semver guarantee beyond convention. That is acceptable for a commodity adapter, not for a platform dependency you cannot replace.

Note for planning: the 2.8.1 changelog is dominated by CI/tooling bumps, but two items are genuinely material — Laravel 13 and PHP 8.5 support — and one is a correctness fix in scheme configuration key handling. Treat the fix as a low-risk reason to upgrade if you configure custom schemes (e.g. HTTPS endpoints or custom domains); otherwise it's a routine bump.

How to Pitch It (Stakeholders)

To executives: We need object storage for user and product files. This package is the standard Laravel connector to Alibaba Cloud OSS, and it is a small, single-purpose piece of plumbing — not a platform bet. Its main strategic value is optionality: it keeps our storage choice reversible at roughly a config-file level, and this latest release confirms it works with the Laravel and PHP versions on our upgrade path. Cost is effectively zero; the risk is concentration in one open-source maintainer, which we can mitigate by keeping our usage behind Laravel's standard storage interface.

To engineering: Adopt it as the OSS driver for Laravel's Storage facade. It gives you the standard Flysystem surface — put, get, url, temporaryUrl, streams, visibility — so application code never imports an OSS-specific class and stays portable to S3 or R2 later. Pin the version, keep the driver isolated to config/filesystems.php plus a thin wrapper for anything OSS-specific, and do not let OSS SDK calls leak into domain code. Release 2.8.1 clears Laravel 13 and PHP 8.5 and includes a fix for scheme configuration key handling — upgrade when you take the framework bump, and add a smoke test that exercises signed URL generation and a write/read round-trip against a staging bucket so CI covers the integration rather than just the adapter's unit tests. Fallback plan if the package stalls: it is ~a few hundred lines of Flysystem adapter, and we can fork it without touching product code.

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.
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle
glavweb/extra-bundle
glavweb/api-bundle
glavweb/admin-bundle
adachsoft/api-version-bundle
elsayed85/laravel-api-exceptions
ouhssini/laravel-demo-mode
daworks/ncloud-outbound-mailer-driver
gp247/cms
ignibyte/aic-gates
nexa-merchant/blog
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
cgv/localized-resource