@aero-cms/astro-sdk
v1.2.0
Published
Astro SDK and server helpers for Aero CMS
Maintainers
Readme
@aero-cms/astro-sdk
Türkçe: Paket eşlemesi ve starter tablosu → aero-cms-setup/docs/PACKAGES.md
Official Astro SDK for Aero CMS. Optimized for server-side rendering in .astro pages.
Install
npm install @aero-cms/astro-sdk @aero-cms/coreEnvironment
# .env
ASTRO_CMS_API_URL=http://localhost:5047Usage in Astro pages
---
// src/pages/index.astro
import { cmsFromEnv, fetchPage, fetchMenu } from '@aero-cms/astro-sdk';
const cms = cmsFromEnv();
const page = await fetchPage(cms, 'anasayfa', { lang: 'tr' });
const menu = await fetchMenu(cms, 'header');
---
<h1>{page.title}</h1>
<nav>
{menu.items.map((item) => (
<a href={item.url}>{item.label}</a>
))}
</nav>Direct client access
import { createCmsClient } from '@aero-cms/astro-sdk';
const cms = createCmsClient({ baseUrl: import.meta.env.ASTRO_CMS_API_URL });
const response = await cms.getPage('kurumsal');Server helpers
| Helper | Description |
|--------|-------------|
| fetchPage(client, slug, { lang }) | Page DTO or throws |
| fetchMenu(client, location) | Menu DTO or throws |
| fetchNews(client, params?) | News list |
| fetchNewsById(client, id) | Single news item |
| fetchEvents(client, params?) | Events list |
| fetchEventById(client, id) | Single event |
| fetchComponentContent(client, key, options?) | Component fields |
| unwrapCmsData(response) | Throws CmsRequestError on failure |
License
MIT
English summary: This document is in English. Astro starter: schemas from
@aero-cms/astro-sdk/schema. See
PACKAGES.md#english-summary.
