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

Laracombee Laravel Package

amranidev/laracombee

Laracombee is a Laravel package offering a simple, Laravel-friendly interface to the Recombee recommendation API. Manage users, items, interactions, and personalized recommendations for e-commerce, media, and marketplace applications.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Personalization roadmap sequencing. Recommendation quality is a second-order feature: it depends on catalog data quality, interaction event capture, and identity resolution. This package makes the instrumentation layer (users, items, detail views, purchases, cart additions, bookmarks, ratings, view portions) a bounded, well-understood piece of work rather than a multi-sprint integration project. That lets you decide whether personalization ships in the current quarter or waits behind event-tracking reliability.
  • Build vs. buy on the recommendation engine. Laracombee is explicitly a thin adapter, not a recommender. Adopting it is effectively a decision to buy the ranking model from Recombee and build nothing. It is the cheapest possible way to evaluate that buy decision: one Composer dependency, a publishable config file, and a set of Artisan commands to push your existing Eloquent records into a live recommender. If Recombee's out-of-the-box quality is sufficient, you skip an ML hire and a six-month model-training program.
  • Time-to-first-recommendation as a discovery metric. The package's artisan surface (laracombee:migrate, laracombee:seed --chunk=250, laracombee:rollback, laracombee:reset) means a small team can go from install to a populated demo database in an afternoon. Use that to set a hard go/no-go checkpoint: if recommendation click-through or conversion lift isn't measurable within a fixed evaluation window, you have not lost much engineering spend.
  • Schema ownership stays in your codebase. Because each model declares a static $laracombee property mapping fields to Recombee types, the recommendation schema lives next to your migrations in version control rather than in an external dashboard. That is the right default for reviewability, and it means a vendor change is a schema diff, not an archaeology project.
  • Multi-surface and multi-tenant architecture decisions. Built-in support for additional Laracombee-style classes (laracombee:new ReportingLaracombee) plus per-instance database ID/token/region/protocol/timeout configuration means separate recommender databases per brand, region, or environment are a configuration concern, not a fork. That unlocks a phased market-by-market rollout instead of a global flag day.
  • Use-case scoping. The method inventory maps cleanly onto concrete product surfaces: "customers who bought this also bought" (item-to-item), "recommended for you" (user-to-item), cart abandonment and cross-sell (cart additions plus purchases), content feeds and recently-watched rails (series and view portions), and social/follower suggestions (recommendUsersToUser). For e-commerce, media libraries, and marketplaces, the surface list is essentially pre-written — the PM job becomes prioritization, not integration scoping.
  • Risk register input. The package's low signal — 113 stars, zero dependents, an opportunity score in the high teens — is itself a decision input. It argues for treating Laracombee as a swappable adapter, keeping the Recombee calls behind a first-party interface, and reserving the ability to either take over maintenance or replace the adapter without touching feature code. It also argues against letting it become load-bearing for anything revenue-critical in the first release.

When to Consider This Package

Consider it when most of the following hold:

  • You are on a modern Laravel stack. PHP 8.2+ and Laravel 10, 11, or 12 — with v1.0.0 extending official support to Laravel 13. Running older Laravel/PHP means pinning to an old branch, at which point the convenience evaporates.
  • You have already decided on Recombee, or are running a short paid evaluation. This package adds no recommendation logic of its own; it is glue. Its whole value is the glue being written, tested, and maintained by someone else.
  • Your domain is a natural fit. Catalog-plus-user-interactions — e-commerce, media libraries, marketplaces — where you already store purchases, views, cart events, bookmarks, or ratings. Sparse or non-existent interaction data is the real blocker, not the wrapper.
  • You want a fast, disposable prototype. The seeding and migration commands plus fake-based offline test coverage mean you can prove a personalization hypothesis without standing up infrastructure or committing headcount.
  • You need multiple recommendation databases. Regional or per-tenant separation is supported out of the box and would otherwise require custom code.
  • You can tolerate a small-community dependency. MIT license mitigates abandonment — you can vendor or fork AbstractRecombee — but nobody should assume a fast upstream response.

Look elsewhere, or plan to write your own client, when:

  • You want self-hosted or vendor-neutral recommendations. Nothing here helps; evaluate open-source rankers or in-house collaborative filtering. Building directly against a provider SDK, or against an abstraction you own, may be cleaner than adopting a wrapper with near-zero dependents.
  • You need sophisticated control over ranking. The surface is pass-through: limits, options arrays, and the underlying API's parameters. There is no feature of this package that helps you tune relevance, blend business rules, or A/B test ranking strategies beyond what Recombee itself supports.
  • You require hardening guarantees. No rate limiting, resilience, or retry policy beyond the SDK's own; the default 2-second timeout and http (not https) default are things you must consciously override. Recommendation calls return promises directly and are fired immediately, unlike the rest of the API which builds requests for send()/batch() — a subtle asymmetry that warrants wrapping in your own service layer so application code isn't handling promises ad hoc.
  • You are on a team without Laravel fluency. The static $laracombee property and facade conveniences assume familiarity with the framework's idioms; other stacks get a steeper ramp than the package's simplicity suggests.

How to Pitch It (Stakeholders)

For executives — the one-paragraph version. Personalization is a common roadmap ask and an expensive one: it normally means either hiring ML specialists or building an event pipeline and a ranking system from scratch. Laracombee lets us test the opposite, cheaper hypothesis first — rent the recommendation engine (Recombee) and buy only the integration, which for us is roughly one dependency and a configuration file. It is a Laravel-native adapter that lets our existing models act as the catalog and user base, with commands to set up and populate the recommender and a small API to log the behaviors we already track (views, carts, purchases, bookmarks) and request recommendations. The strategic value is optionality bought cheaply: we get a measurable answer on whether personalization moves engagement or conversion, in weeks rather than quarters, before committing headcount.

What we're asking for. Approval for a time-boxed pilot on one surface with one catalog, using a staging Recombee database. Success criteria defined up front — lift in click-through on the recommended rail, or incremental cart adds — not "the integration works." Explicitly out of scope: any commitment to Recombee as a permanent vendor, and any production traffic until the pilot reads out.

For engineering. It is a thin, MIT-licensed wrapper around the official Recombee SDK, so we inherit the vendor's capabilities and none of their lock-in at the code level. PHP 8.2+, Laravel 10–13, service provider auto-discovery, publishable config, and an AbstractRecombee base class we can extend for custom error handling or database targeting. Schema is declared in model statics and applied via laracombee:migrate/rollback; backfills via laracombee:seed --chunk=; multiple databases via laracombee:new. Two caveats to plan around, not to be surprised by: request-building is fluent for writes but recommendation reads fire immediately and return promises, so we should wrap all of it behind our own RecommendationService interface; and laracombee:reset wipes the remote database irrecoverably, so it must be environment-guarded in our tooling. The dependency is small and lightly adopted — zero dependents, ~113 stars, though the changelog shows steady maintenance and a current 1.0.0. Treat it as replaceable: our own interface boundary means if the package stalls, we swap the adapter in days.

For the wider business. A concrete, low-cost experiment with defined kill criteria, run behind our own abstraction so we keep negotiating leverage on the vendor, and scoped so that a negative result costs a few engineering weeks rather than a roadmap quarter.

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.
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
stevenay/myanfont
gmostafa/php-graphql-client
xeviant/paystack
snowsoft/faker
meditationsteps/blogetc