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

Symfony Jsonrpc Http Server Laravel Package

yoanm/symfony-jsonrpc-http-server

Symfony integration for yoanm/jsonrpc-server that exposes JSON-RPC 2.0 APIs over HTTP. Configure the server, register method handlers as Symfony services, and handle JSON-RPC requests through the framework.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • API transport standardization: Choosing JSON-RPC 2.0 over REST/GraphQL for internal service-to-service or partner integrations, where you want a single POST endpoint, named methods, and spec-compliant error objects rather than resource modeling.
  • Build vs. buy on protocol plumbing: The package handles the boring, error-prone layer — HTTP request → JSON-RPC envelope parsing → method dispatch → response/error serialization — so engineering effort goes into business methods instead of envelope validation, batch handling, and notification semantics.
  • Roadmap input for internal tooling and BFF layers: Useful when the product needs a thin, predictable RPC surface behind a web or mobile client (e.g., an internal admin API, a webhook fan-in endpoint, an integration gateway) rather than a fully public REST API.
  • Vendor/partner integration decisions: If a partner already speaks JSON-RPC, this reduces the "do we build a custom adapter?" debate to a configuration question.
  • Architecture risk assessment: The Symfony-only packaging is itself a decision input — it forces an explicit call on whether the team's Laravel codebase tolerates a Symfony bridge component or whether the transport layer should live in a separate Symfony service.

When to Consider This Package

Consider it when:

  • You are on Symfony (or a polyglot PHP estate where Symfony components are already in play) and need a spec-compliant JSON-RPC 2.0 HTTP server with minimal custom code.
  • The RPC surface is internal or partner-facing, where clients can be told the method names and the protocol.
  • You want framework-native wiring (routing, DI, service tagging) rather than hand-rolling a dispatcher in front of a controller.
  • Batch requests, notifications, and structured error codes matter to your contract and you'd rather not reimplement the spec.
  • MIT licensing and a maintained release cadence (latest 2025-09-16) satisfy procurement.

Look elsewhere when:

  • You are Laravel-first. This is a Symfony bundle, not a Laravel package: no service provider, no Laravel-native config publishing, and you would be pulling Symfony HTTP/DI conventions into a Laravel app. The integration tax likely exceeds the value for a small team.
  • Community size is a gating factor. Single-digit stars means a thin maintainer base and limited community answers; treat it as "code you may need to fork," not a de facto standard.
  • You need public, documented, cacheable, versioned APIs — REST or GraphQL will serve discoverability, CDN caching, and OpenAPI tooling far better.
  • Your RPC needs are trivial (one or two endpoints) — a controller plus a small validator is cheaper than a dependency.
  • You need streaming, gRPC, or high-throughput binary transports; JSON-RPC over HTTP is the wrong tool.

Adoption gate to apply: require an engineering spike confirming it installs cleanly in your framework, that the dispatch layer is testable, and that error/behavior contracts are pinned by your own integration tests — because upstream will not catch your regressions.

How to Pitch It (Stakeholders)

To executives: This is a small, MIT-licensed, actively maintained library that gives us a standards-compliant JSON-RPC endpoint "for free," so engineering time goes into product behavior rather than protocol plumbing. It is a low-cost, reversible bet — the code footprint is small and the protocol is standard, so the exit cost is low. The caveat is maturity: it is a niche, low-adoption library, so we should not treat it as strategic infrastructure or expose it directly to customers without a hardened facade.

To engineering: It solves the envelope problem — parsing, validating, dispatching, batching, and serializing JSON-RPC 2.0 responses — with framework-native routing and DI. The real decision is framework fit: this ships as a Symfony bundle, so it is a natural pick inside a Symfony service and a questionable one inside a Laravel monolith. Recommend we pilot it in the smallest possible surface area, own the boundary with our own contract tests, and keep the dispatch layer behind an interface so swapping it out later is a day, not a quarter. Also note the maintenance reality of a ~13-star project: assume we may need to fork or patch, and budget for that before committing.

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.
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings
coleus/apps
seampact/laravel
emmyconceptng/laravel-ng-postcode
jjsquady/round-robin