Looking to hire Laravel developers? Try LaraJobs

laravel maintained by bella-baxter

Description
Laravel integration for the Bella Baxter secret management platform
Last update
2026/04/23 22:16 (dev-main)
License
Downloads
0

Comments
comments powered by Disqus

bella-baxter/laravel

Laravel integration for the Bella Baxter secret management platform.

Packagist License

Automatically loads your Bella Baxter secrets into Laravel's environment at boot — secrets are available everywhere via env(), config(), and $_ENV.

Installation

composer require bella-baxter/laravel

The BellaServiceProvider is auto-discovered by Laravel (no manual registration needed).

Configuration

Publish the config file:

php artisan vendor:publish --tag=bella-config

Set environment variables (or edit config/bella.php):

BELLA_BAXTER_URL=https://api.bella-baxter.io
BELLA_BAXTER_API_KEY=bax-your-api-key
BELLA_BAXTER_AUTO_LOAD=true

Usage

Auto-load (default)

With auto_load: true (the default), all secrets are injected into $_ENV and putenv() at boot:

// In any controller, service, or config file:
$dbUrl = env('DATABASE_URL');         // from Bella Baxter
$apiKey = env('STRIPE_API_KEY');      // from Bella Baxter

Facade

use BellaBaxter\Laravel\Facades\Bella;

$secrets = Bella::getAllSecrets();   // array<string, string>
$value   = Bella::getSecret('DATABASE_URL');

Dependency Injection

use BellaBaxter\BaxterClient;

class MyService
{
    public function __construct(private BaxterClient $bella) {}

    public function doSomething(): void
    {
        $secrets = $this->bella->getAllSecrets();
    }
}

Configuration Reference

Key Env var Default Description
url BELLA_BAXTER_URL https://api.bella-baxter.io Base URL of the Baxter API
api_key BELLA_BAXTER_API_KEY '' API key from bella apikeys create
auto_load BELLA_BAXTER_AUTO_LOAD true Load secrets into $_ENV at boot

Manual registration (Laravel 10 or explicit)

If auto-discovery is disabled, add to config/app.php:

'providers' => [
    // ...
    BellaBaxter\Laravel\BellaServiceProvider::class,
],
'aliases' => [
    // ...
    'Bella' => BellaBaxter\Laravel\Facades\Bella::class,
],

Or in bootstrap/providers.php (Laravel 11+):

return [
    // ...
    BellaBaxter\Laravel\BellaServiceProvider::class,
];