Skip to content

Parity Tracking

Larastvel aims for ~100% feature parity with Laravel. Below is a side-by-side comparison.

Laravel FeatureLarastvel EquivalentStatus
routes/web.phpsrc/routes/web.rs
routes/api.phpsrc/routes/api.rs
routes/console.phpCommand / ConsoleKernel / routes/console.rs
config/*.php (10 files)config/*.toml (per-section files)
.env.env
bootstrap/app.phpApplication / App builder
app/Providers/*ServiceProvider, EventServiceProvider, RouteServiceProvider
Artisan CLI (25+ commands)larastvel-cli — serve, route:list, key:generate, migrate, db:seed, make:*, queue:work, etc.
make:* generatorslarastvel make:* — model, controller, migration, seeder, policy, test, job, event, listener, notification, rule, command, factory, mail, scope, observer, resource, provider, broadcast-event
app/Http/Controllers/#[controller] / #[derive(Resource)] macros
Eloquent ORMDbModel + SeaORM + ApiResource / JsonResource / ResourceCollection
JSON:API resourcesJsonApiResource trait + JsonApiItem / JsonApiCollection?include= compound documents, ?fields[type]= sparse fieldsets, when_included(), application/vnd.api+json
Semantic / vector searchVectorSimilarityQuery — cosine / L2 / inner product (<=>, <->, <#>) on Select<E>
Origin-aware CSRFSec-Fetch-Site verification (Laravel 13 PreventRequestForgery) + allow_same_site() / use_origin_only()
Queue routingQueueManager::route() / routed_queue() / central job→queue rules
Queue job attributes#[job(tries, backoff, timeout, fail_on_timeout)] with worker retry, delay, timeout enforcement
Pagination default25 per page (Laravel 13 default)
Model Factories (Faker)ModelFactory, factory_create(), Faker helpers
Blade templatingTera + Blade directives (@auth/@csrf/@error/@guest/@method)
Migrationssrc/database/migrations/ + Migrator
php artisan migratelarastvel migrate
SeedersSeeder trait + DatabaseManager::seed
SessionSessionHandle / SessionLayer / flash / CSRF / encrypted cookies
AuthenticationJWT Auth + AuthenticatedUser extractor + auth_middleware
Password ResetPasswordResetBroker / tokens / throttle / expiry
Email VerificationEmailVerificationBroker / JWT tokens / VerifiedUser extractor
Authorization / GatesGate / Policy / require_ability middleware
Queue / JobsSync, InMemory, Database queues / worker / dispatch() / ShouldQueue
Notifications / Mail5 channels (Mail, Database, Broadcast, SMS, Webhook), Mailable, SMTP
File StorageFilesystem / LocalDisk / StorageManager
Events / ListenersEventService / dispatch() / listen() / fake()
Form Validation20 rules, ValidatedJson/ValidatedQuery extractors
PaginationPaginator<T> / PaginationParams / IntoResponse
Rate LimitingRateLimiter / RateLimiterRegistry / middleware
Encryption / HashingAES-256-GCM Encrypter / bcrypt hash::make() / hash::check()
BroadcastingPusher / Ably / Log / Native (WebSocket)
CacheCacheManager / Array / File / Database stores / remember()
LocalizationTranslator / __() / trans_choice() / pluralization / JSON files
TestingTestClient / TestResponse / RefreshDatabase
Task SchedulingSchedule / ScheduleManager / cron parser
AI SDK foundation — text generation, streaming, structured output, embeddingsAi facade + AiProvider trait — generate/chat/chat_stream/structured/embed with 30-day caching, OpenAI-compatible provider, FakeAi
AI SDK agents / media (agents, images, audio, TTS/STT, vector stores, reranking)❌ Missing (next phase)

All features are fully implemented.

The Laravel AI SDK foundation (text generation, streaming, structured output, embeddings) is available; the agents/media surface (agents, images, audio, TTS/STT, vector stores, reranking) is the remaining Laravel 13 feature not yet available. See PARITY.md for the tracked gap list.

Released under the MIT License.