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

Sam Laravel Package

johnkrovitch/sam

johnkrovitch/sam is a lightweight Laravel/PHP package for integrating SAM into your application. It offers a Composer-based install, simple configuration, and Laravel-friendly conventions, keeping setup minimal and making it easy to add SAM support to existing projects.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Evidence base (important caveat): This assessment is built from a single data point — release notes for v0.1.7 reading "fix the version git tag." No repository contents, README, composer constraints, test coverage, or prior assessment were available. Every conclusion below is therefore conditional and must be re-validated against the actual package before any integration decision. Treat this as a risk-framed hypothesis set, not a verdict.

Architecture fit: Indeterminate. What is knowable is the version posture: a 0.1.x line signals pre-stable API, no backward-compatibility guarantee, and a maintainer still establishing release discipline. As a TPM, plan on the assumption that the public surface will move under you. Suitability for anything on a critical path is low until the package reaches 1.0 or demonstrates a stable interface across several minor releases.

Integration feasibility: The one substantive signal is that the release is a release-engineering fix, not a code fix. "Fix the version git tag" implies prior tags were wrong — most commonly a tag that disagrees with the version field or the v-prefix convention Packagist expects, which causes consumers to resolve a version that does not match the code they receive. Practical consequence: any constraint pinned at or below v0.1.6 (^0.1.5, 0.1.6, a commit-ref workaround) should be treated as unverified. Confirm which tags were re-cut and whether Packagist's metadata for those versions changed after publication, because a re-tagged release can silently alter what an existing lockfile resolves to on a fresh install.

Technical risk:

  • Supply-chain/provenance: re-tagged releases break the assumption that a version identifier maps to immutable content. If the fix involved deleting or force-moving a tag, any audit trail referencing the old tag is now ambiguous.
  • Reproducibility: two composer install runs at different times against the same composer.json may produce different code. This is the highest-severity finding here and is worth escalating independent of the package's functional merits.
  • Maturity: 0.1.x plus active release-tooling churn correlates with thin CI. Absence of a test/CI badge or changelog discipline should be read as "no safety net," not "no news."
  • Low inherent risk: the change itself is metadata-only, so there is no new runtime behavior to regress. The risk is entirely in distribution integrity, not in the code path.

Key questions for the maintainer:

  1. Which tags were moved, deleted, or re-cut, and were any of them already published to Packagist?
  2. Do v0.1.0–v0.1.6 correspond to the code they were originally published with, or has history been rewritten?
  3. Is there a CI pipeline that validates tag-to-composer.json consistency on release, so this class of defect does not recur?
  4. What is the intended 1.0 timeline and the stated BC policy for 0.x?
  5. Is the package framework-coupled (service providers, facades, config publishing, migrations) or standalone PHP with Laravel glue? This determines upgrade cost at the next Laravel major.

Integration Approach

Stack fit: Cannot be confirmed without the composer require block. Verify PHP version bounds and the supported Laravel range against our current runtime before anything else. A 0.1.x package frequently declares a permissive constraint (^9.0|^10.0|^11.0) without having actually tested the upper bound — a declaration is not evidence of support. Require a green test matrix against our exact Laravel and PHP versions, or run one ourselves in a spike branch.

Migration path: Nothing to migrate from — this is greenfield. That is an advantage: we can adopt with a hard pin and no legacy entanglement. Recommended posture is composer require at an exact version (0.1.7, not ^0.1), committed lockfile, and a documented owner for bump decisions. Do not allow floating constraints on a pre-1.0 dependency; the whole point of 0.x is that minors may break.

Compatibility: Pin to v0.1.7 or later specifically, and explicitly exclude earlier tags from consideration — they are the ones whose provenance is in question. Confirm v0.1.7 actually installs from Packagist (not merely from a VCS repository) before adopting it; a tag fix that was never re-synced leaves the registry still wrong.

Sequencing:

  1. Spike branch: install exact v0.1.7, run our test suite, confirm the service provider registers and any published config/migrations apply cleanly.
  2. Verify install reproducibility — install twice from a clean vendor directory and diff the resolved commit hash.
  3. Only then integrate behind an interface we own (repository/adapter pattern) so the dependency is swappable at a single seam.
  4. Defer any production exposure until either the package reaches 1.0 or we have run it in a non-critical path for one full release cycle.

Operational Impact

Maintenance: Budget for the dependency being a maintenance liability, not an asset, at this stage. Pre-1.0 packages with active release-tooling fixes typically ship breaking minors without a deprecation cycle. Assign a named owner and a recurring review cadence; unowned 0.x dependencies rot silently and surface during unrelated framework upgrades.

Support: Effectively single-maintainer, best-effort, no SLA. Confirm the issue tracker is responsive and whether security reports have a documented channel. For anything touching auth, payments, or PII, the absence of a security policy is disqualifying regardless of code quality.

Scaling: Unknown and probably not the constraint. Laravel packages of this shape usually wrap a client library; the scaling profile belongs to the underlying service, not the wrapper. The realistic scaling question is operational surface area — how many config knobs, queue workers, or scheduled tasks does it introduce? Small footprint, small blast radius.

Failure modes:

  • Silent version drift — a re-tagged or force-pushed release changes resolved code without a composer.json edit. Mitigate with exact pins and lockfile commits.
  • Framework upgrade breakage — a Laravel major lands, the package lags, and it blocks our upgrade. Mitigate with the adapter seam so we can fork or replace quickly.
  • Abandonment — 0.1.x projects have a high stall rate. Mitigate by confirming the license permits forking and that the code is small enough to vendor if needed.
  • Metadata-only releases masking inactivity — a changelog that is one line long may indicate a stalled project doing housekeeping rather than active development. Check commit cadence over the last 90 days, not just the latest version number.

Ramp-up: Low for a competent Laravel engineer if the package is conventional (service provider, config publish, facade). Half a day to a spike, a day to an integrated and tested path. The real ramp-up cost is organizational, not technical: convincing reviewers to accept a 0.1.x dependency. Lead with the exact-pin and adapter-seam mitigations; that framing is what gets an approval through.

TPM recommendation: Proceed to a time-boxed evaluation spike only — no production commitment. The v0.1.7 change is metadata-only and carries no runtime risk, but its existence is a signal that release provenance was recently unreliable, and that specific concern must be closed out before adoption. Gate full approval on: (a) confirmed tag integrity and install reproducibility, (b) a tested support matrix against our Laravel/PHP versions, and (c) a named internal owner.

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.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console