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

Token Bundle Laravel Package

innobyte/token-bundle

A PHP token bundle for generating, storing, and validating tokens through a simple API. Useful for token-based workflows and lightweight integration into Laravel or other PHP applications, with configurable handling for common token use cases.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Token-gated access flows: invite codes, one-time access links, password reset / magic-login tokens, promo and referral codes, trial activation codes, single-use download or content-unlock links, API key issuance.
  • Build vs. buy: this is the clearest decision it informs — and the answer is build. The package's value is a thin generate/consume abstraction; the differentiated work (expiry policy, revocation, audit trail, rate limiting, hashing-at-rest) is exactly what it does not provide, so buying it saves little and adds a dependency we can't maintain.
  • Domain modeling input: it validates the shape of the problem (issue → validate → consume, with single-use semantics) and gives us a reference vocabulary for a first-party TokenService rather than a component to adopt.
  • Framework fit: it is a Symfony2 bundle, not a Laravel package — no service provider, no facade, no integration with Laravel's auth, queue, or cache layers. For a Laravel roadmap this is a non-option and should be closed out rather than carried as a candidate.
  • Risk register entry: zero stars, zero dependents, last release January 2022, and a Symfony2 baseline that has been end-of-life for years — a textbook "concept yes, code no" evaluation outcome.

When to Consider This Package

Adopt only if all of the following hold:

  • You maintain a legacy Symfony 2.x/3.x application (not Laravel) and need basic generate/consume behavior this sprint.
  • Requirements are genuinely minimal: no expiration policy, no revocation, no per-tenant scoping, no audit log, no rate limiting, no hashed-at-rest storage.
  • The tokens are internal, low-value, and compromise is tolerable — i.e., not credentials, payments, or PII-adjacent.
  • Your team accepts unmaintained vendor risk: no maintainer response, no CVE path, no roadmap.

Look elsewhere or build in-house when:

  • You are on Laravel — framework mismatch alone disqualifies it. Use URL::temporarySignedRoute, the password reset broker, Str::random + Hash::make, atomic Cache::lock, or a maintained package (e.g., one-time-password / OTP packages) instead.
  • You are on Symfony 4+ — Symfony2 bundle structure is incompatible; the upgrade effort exceeds rewriting.
  • Security matters: single-use guarantees require DB transactions or row locks and constant-time comparison; a 2022-abandoned package with no dependents is a supply-chain liability, not an asset.
  • You need lifecycle features (expiry, revocation, replay detection, multi-tenancy, auditability) — none are in scope here.

How to Pitch It (Stakeholders)

To executives: Recommend not adopting. The package is a Symfony2 bundle — the wrong framework for our Laravel stack — with no community (0 stars, 0 dependents) and no release since January 2022. It cannot be a strategic dependency. The capability it gestures at is small and well-understood; a first-party token service costs roughly 1–2 engineering days and gives us expiry, revocation, auditability, and a maintainer we control.

To engineering: Take the concept, not the code. Implement a tokens table (hashed token, type, expires_at, consumed_at, metadata) behind a TokenService with issue() and consume(), enforcing single-use via a transaction with a row lock and constant-time comparison. This beats both the abandoned bundle and ad-hoc Str::random sprinkled through controllers, and it removes a vendor whose security posture we cannot influence.

Bottom line: Evaluate-and-reject. Close the candidate, record the rationale in the risk register, and route the underlying need to a small in-house build.

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.
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
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource
noith/settings