Official Symfony Bundle for
astroway/sdk— DI registration, autowireableAstrowayservice, full config via Symfony's standardastroway.yaml.
composer require astroway/sdk-symfonyThe 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],
];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|bearerSet ASTROWAY_API_KEY in .env.local.
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.
0.1.0-alpha.x— Bundle + DI registration (current).0.1.0-alpha.2+— Compiler pass forastroway.namespacetagged services (decoration).0.1.0-beta.1—AstrowayDataCollectorfor Symfony Profiler (Astroway calls visible in_profilerdebug toolbar).0.1.0-rc.1— Console commands (bin/console astroway:health,astroway:credits).0.1.0— stable surface freeze.
- 📦 Packagist: https://packagist.org/packages/astroway/sdk-symfony
- 📦 Core SDK:
astroway/sdk - 📘 API docs: https://api.astroway.info/docs/
MIT — see LICENSE.