astroway/sdk-symfony

Symfony Bundle for astroway/sdk — DI integration, dataclass collector, Astroway service for autowiring.

Maintainers

Package info

github.com/astroway/astroway-php-symfony

Homepage

Type:symfony-bundle

pkg:composer/astroway/sdk-symfony

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v0.1.0-alpha.1 2026-05-10 22:51 UTC

This package is auto-updated.

Last update: 2026-05-10 23:17:40 UTC


README

Official Symfony Bundle for astroway/sdk — DI registration, autowireable Astroway service, full config via Symfony's standard astroway.yaml.

Packagist version

Install

composer require astroway/sdk-symfony

The bundle auto-registers via Symfony Flex; if you opted out of Flex, add it manually to config/bundles.php:

return [
    // ...
    Astroway\Symfony\AstrowayBundle::class => ['all' => true],
];

Configure

Create config/packages/astroway.yaml:

astroway:
    api_key: '%env(ASTROWAY_API_KEY)%'
    base_url: 'https://api.astroway.info/v1'   # optional
    timeout: 30.0                                # optional, seconds
    auth_scheme: header                          # optional, header|bearer

Set ASTROWAY_API_KEY in .env.local.

Use

use Astroway\Astroway;

final class ChartController extends AbstractController
{
    public function __construct(private readonly Astroway $astroway) {}

    #[Route('/chart', methods: ['POST'])]
    public function chart(Request $request): JsonResponse
    {
        $body = json_decode($request->getContent(), true);
        $chart = $this->astroway->chart()->compute($body);
        return new JsonResponse($chart);
    }
}

Autowiring works out of the box — the bundle registers Astroway\Astroway as a public service.

Roadmap

  • 0.1.0-alpha.x — Bundle + DI registration (current).
  • 0.1.0-alpha.2+ — Compiler pass for astroway.namespace tagged services (decoration).
  • 0.1.0-beta.1AstrowayDataCollector for Symfony Profiler (Astroway calls visible in _profiler debug toolbar).
  • 0.1.0-rc.1 — Console commands (bin/console astroway:health, astroway:credits).
  • 0.1.0 — stable surface freeze.

Links

License

MIT — see LICENSE.