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 Evm Laravel Package

farbcode/laravel-evm

Simple, reliable Ethereum integration for Laravel with EIP-1559 fees, queued async transactions, nonce tracking, and events for every step from queued to mined. Requires PHP 8.4+ and ext-gmp.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. farbcode/laravel-evm is a Laravel-native EVM integration: service provider, facade, config publishing, queue-backed transaction submission, Laravel events (TxQueued, TxBroadcasted, TxMined, TxFailed, and now TxReverted), plus nonce and EIP-1559 fee strategies. That makes it a reasonable fit for a Laravel application that needs occasional contract reads and asynchronous contract writes without introducing a separate blockchain service. It is not an indexer, custody platform, or high-throughput transaction engine. The package’s scope should be treated as “Laravel-friendly EVM RPC client with queued writes,” not as chain infrastructure.

Integration feasibility. Installation is straightforward for a greenfield Laravel 11/12/13 application on PHP 8.4 with ext-gmp: Composer install, config publish, env-based RPC URL/chain ID/private key, then Evm::at() and sendAsync(). The hard constraints are real, though: PHP >= 8.4 and ext-gmp narrow the hosting matrix, and the env-based private key is suitable only for development or tightly controlled pilots. Production use needs a KMS/HSM-backed Signer implementation and an external secrets path. The queue dependency is also architectural: writes require a correctly configured worker, timeout, retry policy, and dead-letter/monitoring path.

Technical risk. Adoption is the dominant risk: 4 GitHub stars, 0 dependents, a v0.x version line, and what appears to be a small maintainer base. The v0.4.0 changelog is both reassuring and cautionary: it documents a substantial audit, a jump from 14 to 165 tests, and fixes for silent wrong-value bugs, reverted transactions being reported as successful, credential leakage into logs, nonce-cache wedging, and queue-job safety. That is a credible maturity step, but it is also evidence that earlier versions had defects in exactly the areas that matter for money movement. The package is now more trustworthy than its star count suggests, but it is not yet proven by third-party production usage.

Key questions.

  • Which chains and RPC providers are officially supported and tested beyond the current CI matrix?
  • Are there known production deployments, and can the maintainer provide references or operational war stories?
  • What is the maintainer bus factor, release cadence, and policy for breaking changes within v0.x?
  • Is there a supported KMS/HSM signer path, or is that entirely custom?
  • How does the package handle chain reorgs, finality confirmations, and replacement transactions in practice?
  • What is the expected throughput ceiling per signing address given the “one transaction at a time” lock?
  • Does the optional evm_transactions tracking table provide enough idempotency and reconciliation for finance/audit requirements?
  • What is the commercial support option, if any, and what SLA accompanies it?

TPM recommendation. Approve for a bounded pilot in a greenfield Laravel service with read-only calls first, then testnet writes, then low-value production writes behind caps and reconciliation. Do not make it the foundation of high-value payment flows or multi-chain treasury operations until the key-management, reorg/finality, and operational-support questions are answered.

Integration Approach

Stack fit. The package aligns well with a standard Laravel stack: Laravel queues for async submission, events for workflow state, facades for ergonomics, and config/env for RPC endpoints. It expects Redis or database queues and a stable RPC provider. The team must also accept PHP 8.4 and ext-gmp as platform requirements. For applications already on Laravel 11+ and comfortable operating queue workers, the fit is good; for older PHP/Laravel estates, the fit is poor.

Migration path. Treat this as a greenfield integration rather than a drop-in replacement for an existing blockchain client. Wrap the package behind an internal interface such as ChainWriter/ChainReader so facades and package-specific types do not leak across the domain. Persist the sendAsync() job/transaction ID and reconcile it against receipts and the optional evm_transactions table. If an existing service already submits transactions, migrate only read paths first; keep the current writer until the new path has proven reconciliation and failure handling.

Compatibility. The package is explicitly compatible with Laravel 11, 12, and 13 and PHP 8.4+, with ext-gmp declared. The v0.4.0 release contains behaviour changes that affect application correctness: integers are now decimal strings, at() returns a new handle instead of mutating a singleton, fee defaults changed, and nonce/fee extension points changed. Any application code doing native PHP arithmetic on returned values must move to bcmath/GMP. Pin the package version, read UPGRADING.md before every minor upgrade, and keep Laravel/PHP versions inside the tested matrix.

Sequencing.

  1. Spike: install in a disposable Laravel 11/12 app, verify RPC connectivity, read-only calls, ABI decoding, and log filtering against a testnet.
  2. Operational baseline: configure a dedicated evm-send queue, worker timeout, retry guard, monitoring, and secret storage; confirm the GMP extension in all environments.
  3. Testnet writes: exercise sendAsync(), receipts, TxMined/TxReverted, nonce recovery, fee bumps, and replacement transactions.
  4. Low-value production: enable native value transfers or token transfers with per-transaction and daily caps, mandatory reconciliation, and alerting.
  5. Scale-out: only after pilot metrics are stable, add multiple signing addresses or queue partitions if throughput requires it.
  6. Custody hardening: replace the env private key with a KMS/HSM Signer and document key-rotation and incident procedures.

Operational Impact

Maintenance. The package is small and MIT-licensed, but v0.x with a single visible maintainer means the team should budget for dependency ownership. Expect occasional breaking changes, require changelog review on upgrade, and consider vendoring/forking only if the project becomes business-critical. The v0.4.0 audit and expanded test suite reduce maintenance risk, but they do not eliminate the bus-factor risk.

Support. Support appears to be community/documentation-based: README, docs site, changelog, releases, and GitHub issues. There is no evident commercial SLA. For production money movement, the team needs an internal on-call owner who understands Ethereum transaction lifecycle, not just Laravel. Escalation to the maintainer should be treated as best-effort.

Scaling. Throughput is bounded less by Laravel than by RPC rate limits, queue worker capacity, and the package’s one-transaction-at-a-time-per-signing-address lock. A single signing address will serialize writes; scale by using multiple signing addresses, separate queues, and disciplined nonce management. Log queries need chunking (evm.logs.max_chunk) and should not be used as a general-purpose indexer. Receipt polling and fee bumping add load during congestion, so queue concurrency and RPC quotas must be sized for failure, not just happy-path volume.

Failure modes. The important ones are: RPC provider outage or credential exhaustion; nonce desynchronization and stuck queues; dropped or replaced transactions; reverted transactions that must not be credited; fee under/overpayment during base-fee spikes; queue worker timeout killing a broadcast job mid-poll; secret leakage through logs or exception traces; and precision errors if callers do arithmetic on decimal strings with native ints. The package now types RPC errors and separates revert from transport failure, which helps, but the application still needs idempotency keys, reconciliation jobs, alerting on TxFailed/TxReverted, and a manual intervention path for stuck nonces.

Ramp-up. The team needs more than Laravel familiarity: EIP-1559 fee mechanics, nonce semantics, receipt status versus inclusion, ABI encoding, event topic filtering, and chain finality. The decimal-string return type is a deliberate operational change; developers must use bcmath/GMP consistently. A realistic ramp-up is one experienced backend engineer for two to three weeks to build the pilot, plus ops time for queue/RPC monitoring and a security review of key handling.

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.
roundly-consulting/kubernetes-api-for-laravel
roundly-consulting/plausible-for-laravel
gvp/gvp-laravel-template
metasyncsite/laravel-metasync-client
roundly-consulting/onboarding-for-laravel
andydefer/laravel-notification
adachsoft/cli-process-tester
jhaskell13/laraflow
sebastienheyd/boilerplate-media-manager
ccast/tagixo-primix
pretendtrue/laravel-builder
sawmainek/laravel-scout-tntsearch-driver
tomshaw/laravel-calendar-table
dibakar/laravel-ownership
steadrun/laravel-monitor
labyrinthe/connect-laravel
elmogy/layan
drewdan/sentinel-client
dskripchenko/laravel-llm
fatryst/nuonuo