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

Yandex Cloud Client Php Laravel Package

tigusigalpa/yandex-cloud-client-php

A PHP client for Yandex Cloud APIs with a clean, Laravel-friendly interface. Easily connect your app to services like Object Storage, Translate, and SpeechKit, with simple configuration and straightforward authentication for common cloud operations.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy on cloud auth plumbing. IAM token issuance, refresh, expiry handling, and caching are undifferentiated work with well-known failure modes (thundering-herd refresh, clock skew, stale tokens in long-running workers). This package lets us buy that layer for ~zero cost instead of owning a token state machine.
  • Feature: shipping Yandex Cloud-backed features into a Laravel product. Anything touching Object Storage (media/document uploads), SpeechKit (STT/TTS), Vision/OCR, Translate, or YandexGPT becomes a thin service class on top of a shared authenticated transport. Useful for multilingual product surfaces, document-intake workflows, and AI features for Russian-speaking users.
  • Roadmap sequencing. If more than one Yandex Cloud service is on the roadmap, adopt the shared client first — it is explicitly positioned as the core dependency for the other Yandex Cloud PHP packages, so each subsequent service is a small increment rather than a new integration project.
  • Market/compliance decision. Data residency requirements (152-FZ) and latency for RU-based users can make Yandex Cloud the right region choice. This package is the cheap enabling step that keeps that option open without committing to a rewrite of our HTTP layer.
  • Architecture: transport consolidation. A single HTTP transport plus auth abstraction reduces the number of bespoke Guzzle wrappers, retry policies, and credential stores scattered across the codebase — a direct reduction in security surface and audit scope.
  • Sourcing/exit-cost management. Because the auth layer is isolated behind one package, we can later swap to Yandex's official SDKs (Go/Python/Java) or a raw client for the services we actually use, without touching domain code — if we wrap it behind our own interface (see below).

When to Consider This Package

Adopt when all of the following hold:

  • The stack is PHP 8.0+ and, ideally, Laravel — you get native service-provider/config integration rather than DIY bootstrapping.
  • You are calling two or more Yandex Cloud services, or expect to within two quarters; for a single one-off call, a direct signed request is simpler than adding a dependency.
  • You want managed token lifecycle (OAuth exchange → IAM token → automatic refresh → caching) rather than embedding credentials in each call site.
  • You accept a community-maintained dependency for a non-critical-path concern and can absorb the risk with a thin internal adapter.

Look elsewhere / do not adopt when:

  • Multi-cloud or provider-agnostic abstraction is a real requirement — this is deliberately Yandex-specific and will not abstract away.
  • You need vendor-backed support, SLAs, or a security review trail. With 17 stars and 0 dependents there are no production references, no downstream battle-testing, and effectively single-maintainer risk. Treat it as unproven.
  • Provisioning/infrastructure is the need — use Terraform or the console; this is a runtime API client, not IaC.
  • The work is heavier than request/response — long-running streaming, high-concurrency async, or batch jobs may want native SDKs or a queue-backed worker design instead.
  • Your PHP version or framework is pinned below the supported floor, or you need PSR-7/PSR-18 strictness the package doesn't advertise.
  • The Yandex dependency is speculative. Don't add a regional cloud SDK for a market you haven't validated; the opportunity signal here is weak (limited ecosystem pull), which mirrors our own uncertainty.

Recommendation: time-box a 3–5 day spike. Success criteria: token refresh survives a 24h soak with a long-running queue worker; the Laravel binding is clean; wrapping it behind our own CloudStorage/CloudAuth interfaces costs under a day. If it passes, adopt as an internal standard with the adapter in place; if not, fall back to a ~150-line in-house client.

How to Pitch It (Stakeholders)

For executives (one paragraph): Adding Yandex Cloud support normally means building and owning authentication — token exchange, refresh, caching, retries — before a single feature ships. This MIT-licensed package provides that layer for free and plugs into Laravel natively, so we can move straight to product work on storage, speech, translation, or AI features. It is a small, reversible dependency: MIT-licensed, low switching cost if wrapped behind our own interface. The trade-off is maturity — it is an early community package with a single maintainer and no downstream consumers — so we propose a short technical spike and an internal adapter rather than a hard commitment. Net effect: days of engineering saved per integration, near-zero license cost, and our regional-compliance options preserved.

For engineering: One dependency gives you automatic IAM token issuance and refresh, caching, and a unified HTTP transport — replacing per-service credential handling. It is designed as the shared core of the Yandex Cloud PHP packages, so each new service is a small adapter. Two asks: (1) put it behind an internal interface so we can swap to official SDKs or raw clients on exit, and (2) harden the token cache for our worker topology (single-flight refresh, jitter) — that's the one place where an early-stage package is most likely to bite us.

Risks to state openly: 17 stars / 0 dependents means no social proof; single-maintainer bus factor; no vendor SLA; low ecosystem pull suggests limited community debugging help. All are mitigable with the adapter and the soak test, none are mitigable by hoping.

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.
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle