PHPackages                             martin-lechene/laravel-euria - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. martin-lechene/laravel-euria

ActiveLibrary[API Development](/categories/api)

martin-lechene/laravel-euria
============================

Laravel package for Infomaniak AI Services (Euria) — LLM, Embeddings, Images, Audio, Streaming

v1.0.1(2mo ago)1001[2 issues](https://github.com/martin-lechene/laravel-euria/issues)MITPHPPHP ^8.1CI passing

Since Apr 29Pushed 2mo agoCompare

[ Source](https://github.com/martin-lechene/laravel-euria)[ Packagist](https://packagist.org/packages/martin-lechene/laravel-euria)[ Fund](https://doganddev.eu)[ Fund](https://infomaniak.com)[ RSS](/packages/martin-lechene-laravel-euria/feed)WikiDiscussions main Synced 3w ago

READMEChangelogDependencies (13)Versions (4)Used By (0)

🇨🇭 Laravel Euria
================

[](#-laravel-euria)

[![Tests](https://github.com/martin-lechene/laravel-euria/actions/workflows/tests.yml/badge.svg)](https://github.com/martin-lechene/laravel-euria/actions/workflows/tests.yml)[![Latest Version on Packagist](https://camo.githubusercontent.com/ab566f42252069cbb565d9174663d3ba9dbf148f9372db322cffb0e73877e556/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6d617274696e2d6c656368656e652f6c61726176656c2d65757269612e737667)](https://packagist.org/packages/martin-lechene/laravel-euria)[![Total Downloads](https://camo.githubusercontent.com/4436806c8b20e52e4a57190a9e8d200b062f6832141ba6afbefb52bfe9bf0813/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6d617274696e2d6c656368656e652f6c61726176656c2d65757269612e737667)](https://packagist.org/packages/martin-lechene/laravel-euria)[![License](https://camo.githubusercontent.com/9f78feda7054d029d3c27b87a9214c064834c6e88eb8d41d37dfefdf54eb4b6a/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f6d617274696e2d6c656368656e652f6c61726176656c2d65757269612e737667)](LICENSE.md)

Laravel package for the Infomaniak AI Services (Euria) API — sovereign LLM hosted in Switzerland.

Installation
------------

[](#installation)

```
composer require martin-lechene/laravel-euria
```

Configuration
-------------

[](#configuration)

Publish the configuration:

```
php artisan vendor:publish --tag=euria-config
```

Then configure your `.env`:

```
INFOMANIAK_API_TOKEN=your_oauth2_api_token_here
INFOMANIAK_AI_BASE_URL=https://api.infomaniak.com/1/ai
EURIA_DEFAULT_TEXT_MODEL=mixtral
EURIA_DEFAULT_EMBEDDING_MODEL=text-embedding-3-small
EURIA_DEFAULT_IMAGE_MODEL=sdxl
EURIA_DEFAULT_AUDIO_MODEL=whisper-1
EURIA_TIMEOUT=60
EURIA_IMAGE_FORMAT=square
EURIA_EVENTS_ENABLED=true
```

Quick Usage
-----------

[](#quick-usage)

```
use MartinLechene\Euria\EuriaFacade as Euria;

// Via Facade
$response = Euria::text('Hello Euria!');
echo $response;

// Via helper
$response = euria()->text('Hello!');

// Override token (multi-tenant)
$response = Euria::withToken('tok_org2_xxx')->model('llama-3')->text('Hi');

// Streaming
foreach (Euria::stream('Explain digital sovereignty') as $chunk) {
    echo $chunk;
}

// Embeddings
$embedding = euria()->embed('Text to vectorize')->first();

// Images
$imageUrl = euria()->image('An alpine landscape in summer')->first();

// Transcription audio
$text = euria()->transcribe('/path/to/audio.mp3');
```

Agents
------

[](#agents)

```
class SupportBot implements \MartinLechene\Euria\Contracts\Agent
{
    use \MartinLechene\Euria\Concerns\Promptable;

    public function instructions(): string
    {
        return 'You are a sovereign support assistant hosted in Switzerland.';
    }
}

$response = (new SupportBot)->prompt('How do I cancel my subscription?');
```

Testing
-------

[](#testing)

The package includes `EuriaFake` for testing without calling the API:

```
use MartinLechene\Euria\EuriaFacade as Euria;

it('generates a text response', function () {
    $fake = Euria::fake();
    $fake->fakeText('Hello from the fake!');

    $response = Euria::text('Say hello');

    expect((string) $response)->toBe('Hello from the fake!');
    $fake->assertTextCalled(1);
});
```

Artisan Commands
----------------

[](#artisan-commands)

```
php artisan euria:test        # Test connection
php artisan euria:models      # List available models
php artisan make:euria-agent  # Create a new Agent
```

Contributing
------------

[](#contributing)

PRs are welcome! Please run `composer quality` before submitting.

License
-------

[](#license)

MIT

###  Health Score

36

—

LowBetter than 79% of packages

Maintenance79

Regular maintenance activity

Popularity7

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

86d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/9bc495be354ec55193de063d8556f845e7cc98c98ab030e4e7a76fe60d75e99f?d=identicon)[doganddev](/maintainers/doganddev)

---

Top Contributors

[![martin-lechene](https://avatars.githubusercontent.com/u/46826871?v=4)](https://github.com/martin-lechene "martin-lechene (12 commits)")

---

Tags

aieuriainfomaniakinfomaniak-ailaravellaravel-packagepackagelaravelaillmwhisperembeddingsinfomaniakeuriasdxl

###  Code Quality

TestsPest

Static AnalysisPHPStan

Code StyleLaravel Pint

Type Coverage Yes

### Embed Badge

![Health badge](/badges/martin-lechene-laravel-euria/health.svg)

```
[![Health](https://phpackages.com/badges/martin-lechene-laravel-euria/health.svg)](https://phpackages.com/packages/martin-lechene-laravel-euria)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3345.3M347](/packages/psalm-plugin-laravel)[laravel/socialite

Laravel wrapper around OAuth 1 &amp; OAuth 2 libraries.

5.7k108.5M925](/packages/laravel-socialite)[simplestats-io/laravel-client

Server-side analytics for Laravel that follows the full funnel from visit to registration to payment, attributed to the channel that drove it. Revenue, MRR, churn and ad-spend profit (ROAS/CAC) per channel. GDPR compliant, ad-blocker proof.

5022.6k](/packages/simplestats-io-laravel-client)[defstudio/telegraph

A laravel facade to interact with Telegram Bots

813336.8k3](/packages/defstudio-telegraph)[spatie/laravel-export

Create a static site bundle from a Laravel app

674146.0k6](/packages/spatie-laravel-export)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9762.4M133](/packages/roots-acorn)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
