# Lovable

Lovable будує фронтенд на Vite і кладе бекенд у вбудований Cloud на Supabase. Звідси одне правило: ключ AstroWay живе в **Secrets** і читається з Edge Function, а браузер викликає функцію. Змінна `VITE_*` не підходить навіть тимчасово: Vite вшиває її в бандл, який отримує кожен відвідувач.

## 1. Ключ

Створіть ключ **Тільки сервер** з областю `chart` і бюджетом, як описано в розділі [Ключ для автоматизації](/integrations/). Бюджет тут важливий: функцію може викликати будь-хто, хто відкрив ваш опублікований застосунок.

## 2. Промпт

Вставте в чат проєкту:

```text title="prompt"
Add an Edge Function named big-three. It reads the secret ASTROWAY_API_KEY
(ask me for it with the secure secret form) and POSTs the JSON body
{ date, time, timezone, latitude, longitude } to
https://api.astroway.info/v1/chart with the header "X-Api-Key: <secret>".
Never put the key in client code or in a VITE_ variable.

The response is { ok: true, data: {...} } or { ok: false, error: { code,
message } }. On error return the error object with the same HTTP status.
On success return { sun, moon, rising, offset_used } where each sign is
SIGNS[Math.floor(longitude / 30)] with SIGNS = Aries, Taurus, Gemini,
Cancer, Leo, Virgo, Libra, Scorpio, Sagittarius, Capricorn, Aquarius,
Pisces; sun and moon come from data.planets entries named "Sun" and
"Moon", rising from data.houses.ascendant, offset_used from
data.input.timezoneOffset.

Then add a form with date, time, an IANA time zone (default Europe/Kyiv),
latitude and longitude, and show the three signs from the function.
```

Lovable попросить значення `ASTROWAY_API_KEY` у захищеній формі в чаті. Пізніше секрет можна замінити в **More → Settings → Secrets**: значення там лише записується, переглянути його вже не можна.

Функція, яку має отримати Lovable, по суті та сама, що на сторінці [Supabase Edge Function](/integrations/supabase/). Якщо згенерований код відрізняється, вставте той файл і попросіть Lovable використати його.

## 3. Перевірте

Введіть `1990-05-15`, `14:30:00`, `Europe/Kyiv`, `50.45`, `30.52`. Правильна відповідь: Сонце `Taurus`, Місяць `Capricorn`, Асцендент `Virgo`, зсув `4`. Якщо зсув 3, застосунок рахує зсув сам замість назви зони, і всі доми зсунуті. Один розрахунок коштує 20 кредитів.

## Документація в чаті Lovable

Щоб Lovable брав назви полів і ендпоінтів з нашої документації, а не вгадував, підключіть сервер документації як chat connector. Він не потребує ключа і кредитів не витрачає.

1. **Connectors → Add custom → MCP server**.
2. **Server name** `AstroWay docs`, **Server URL** `https://mcp.astroway.info/mcp/docs`.
3. **Authentication**: No authentication.

Після цього можна писати в чат, наприклад, "Using AstroWay docs, find the endpoint for a daily horoscope by sign and add it". Chat connector працює лише під час побудови і в опублікований застосунок не потрапляє, тож розрахунки в застосунку однаково йдуть через Edge Function.

**Note:**
Перевірено 2026-11-07: Edge Function з [Supabase](/integrations/supabase/) запущена локально в Deno проти продакшену AstroWay і дала відповідь вище; сервер документації відповів на `tools/list` і `find_endpoint` без ключа. Самі кроки в інтерфейсі Lovable написані за його документацією і в цій перевірці не виконувалися.
