Skip to content

laravel-typesafe-jev

Unofficial Laravel 12/13 integration for Jev with config, facade, scoped DI, async promises and a recording test fake.

PluginbetaMIT

Overview

Laravel TypeSafe Jev is an unofficial, community-maintained Laravel integration built on the butochnikov/typesafe-sdk-php SDK. It keeps the SDK's typed DTOs, promises and exceptions and adds Laravel package discovery, scoped lazy dependency injection, a published config file, a facade and a recording fake for tests. It supports Laravel 12 on PHP 8.2 to 8.5 and Laravel 13 on PHP 8.3 to 8.5.

You call Jev::systemOne with a state and Noul, Choice and Score questions, or inject the JevClient contract into services. Async variants return Guzzle promises, and per-call model, retry policy, timeout and extra headers or body are passed through without adding another retry layer. The key is only validated when a real client is first used, so package discovery and config caching work without one. The README is explicit that this is not a text-generation or chat client. Documentation is also available in Russian.

What the decision model decides

TypeQuestionAnswers
Yes / noIs this about billing?—
ChoiceWhat is the tone?calm · angry
ScoreHow urgent is it?low · medium · high

How it works

  1. composer require the package and publish config
  2. Set TYPESAFE_API_KEY in .env
  3. Call Jev::systemOne or inject JevClient
  4. Use typed responses; use the fake in tests

Strengths

  • Idiomatic Laravel integration
  • Async support via promises
  • Recording fake for tests
  • Lazy key validation

Caveats

  • Unofficial
  • Depends on a community PHP SDK at 0.1
  • No global alias registered

Getting started

composer require butochnikov/laravel-typesafe-jev && php artisan vendor:publish --tag=jev-config

At a glance

Type
Plugin
Status
beta
Language
PHP
Runtime
Laravel 12/13 package
Has code
yes
Has tests
yes
License
MIT

Use cases and integrations

How curated lists describe it

  • PHP ecosystem: unofficial Laravel integration for Jev with typed responses, async requests, scoped dependency injection, and testing fakes.

    yibie/awesome-jev
  • Unofficial Laravel 12/13 integration: config, facade, scoped DI, and a recording fake on the PHP SDK.

    AnotiaWang/awesome-decision-models
  • A Laravel adapter for Jev with configuration, dependency injection, a Facade and a request-recording test fake.

    logicrw/awesome-jev-projects
  • Unofficial Laravel integration for TypeSafe Jev AI with typed responses, async…

    wh000wh000/awesome-jev-live
  • Laravel integration with typed responses, async requests, and testing fakes.

    cobanov/awesome-jev
  • Unofficial Laravel integration for TypeSafe Jev AI with typed responses, async requests, scoped dependency injection, and testing fakes.

    hellogumbo/awesome-jev

Frequently asked questions

Which Laravel versions are supported?

Laravel 12 on PHP 8.2-8.5 and Laravel 13 on PHP 8.3-8.5.

Can I test without calling the API?

Yes, a recording fake is included.

Is it a chat client?

No, it only sends typed Jev questions.

Related projects

  • Ax, a DSPy-style multi-language LLM framework, listed with a native TypeSafe provider for Boolean, Choice, Score and raw Jev questions.

    PluginproductionTypeScript
  • Effect TypeScript library whose @effect/ai-typesafe package maps classify, probability and rating operations to Jev questions.

    ProjectproductionTypeScript
  • PHP monorepo whose Polyglot module adds a TypeSafe driver for typed Noul, Choice and Score decisions alongside LLM inference.

    ProjectproductionPHP
  • Elixir library for unified LLM calls across providers, with an evaluate interface that calls Jev via TypeSafe or OpenRouter.

    ProjectproductionElixir
  • Self-hosted multi-tenant AI agent platform listed as including optional TypeSafe client tools for classification, scoring and yes/no.

    LibraryproductionPython
  • Provider-agnostic TypeScript AI SDK; per list sources, an @tanstack/ai-typesafe adapter exposes Jev decisions through decide().

    ServiceproductionTypeScript