one2tek/larapi
Larapi is a Laravel package for building REST APIs with less boilerplate. It offers convenient response helpers, CRUD-oriented endpoints, and common API patterns so teams can ship consistent JSON APIs faster while staying within Laravel conventions.
Basis of this assessment: release notes for 2.0.11 only. No source review, no CI results, no composer.json inspection. Confidence is correspondingly low; the questions below are what would move it.
Architecture fit. larapi is an opinionated REST scaffolding layer for Laravel — base controllers, a repository abstraction, and a response-formatting convention. Fit is a values question more than a technical one: do we want a packaged convention layer we don't own, or in-house base classes we do? Adding Laravel 9 support raises the package from "pinned to a prior framework generation" to "deployable in a current-at-the-time app skeleton" (PHP 8.0+, Symfony 6 components). That is the entire substance of this release.
Integration feasibility. Composer-level. The open feasibility question is whether the published service provider, config publishing, and route/middleware registration still behave correctly under Laravel 9's bootstrap and route-caching paths. The release note describes a constraint change, not a code change — which is either reassuring (nothing needed fixing) or a yellow flag (constraint widened without documented verification). We cannot tell which from the notes.
Technical risk.
composer update in a monorepo can silently move this package onto a Laravel 9 dependency graph.Key questions.
illuminate/* and php constraints in 2.0.11 versus 2.0.10?Stack fit. Viable where the stack is Laravel 9 / PHP 8.0–8.1 and the team accepts a thinly maintained third-party convention layer. Good for greenfield internal APIs where scaffolding speed outweighs long-term vendor ownership. Poor for platforms expected to live three-plus years without a dependency reckoning.
Migration path. No code migration is implied for existing 2.0.10 consumers. Two defensible choices: pin 2.0.10 and defer, or adopt 2.0.11 on a branch with a full suite run and a reviewed composer.lock diff. For a Laravel 8 → 9 app upgrade, this release is a prerequisite, not a blocker — sequence it inside that upgrade rather than as a standalone bump.
Compatibility. Additive at the constraint level. Risk concentrates in the transitive set (illuminate/*, symfony/*); confirm nothing else in the tree pins illuminate below 9.
Sequencing.
composer update --dry-run first, inspect the lock diff before applying.Maintenance. Low ceremony as a dependency, but the cadence reads reactive — framework support arriving after the framework's peak. Budget for periodic forced upgrades rather than assuming passive drift.
Support. No evidence of a support policy, security disclosure process, or LTS commitment. Treat as community-supported, best-effort. For anything customer-facing, wrap it: keep the package behind our own base classes so swapping to in-house code or a fork stays contained.
Scaling. The package is request-path scaffolding; scaling characteristics are the application's, not the package's. The one thing to verify under load rather than assume: any per-request reflection or config resolution in the base controller path.
Failure modes.
composer update pulls 2.0.11 and shifts illuminate versions across the lockfile. Mitigate with committed lockfiles and CI lock diffs.Ramp-up. Near zero for Laravel-fluent engineers; the conventions are the only curve, call it half a day to read the base classes and one example controller. The real cost is organizational — someone must own the fork-or-upgrade decision, because the maintainer will not.
How can I help you explore Laravel packages today?