# Warstwa prezentacji (`presentation`) Niezależna usługa serwująca stronę WWW (formularz + tabela wyników). **W dół** przekazuje dane z formularza do warstwy logicznej i renderuje opracowane wyniki. Brak logiki biznesowej i dostępu do danych. ## Trasy - `GET /` — **Horoskop**: formularz danych momentu (data, godzina, strefa, opcjonalnie lokalizacja) - `POST /` — liczy pozycje obiektów (woła logic `/chart/positions`) i renderuje czytelną tabelę - `GET /significators`, `POST /significators` — wyszukiwarka w bazach interpretacji (warstwa danych) - `GET /health` Strona „Horoskop" to widok do **ręcznego testowania**: podstawowe dane wejściowe → to, co policzyła warstwa logiczna (znak, pozycja w znaku, absolutna, kierunek, prędkość). Przycisk „Tu i teraz" uzupełnia bieżącą datę/godzinę i strefę przeglądarki. ## Zależności w dół Zna wyłącznie `LOGIC_URL` (adres warstwy logicznej) i jej kontrakty `/chart/positions` oraz `/api/query`. Nie wie nic o silniku ani bazach. > Uwaga: pełne liczenie pozycji wymaga warstwy logicznej z silnikiem efemeryd > (gałąź `feat/logic-engine`). Bez niego strona „Horoskop" pokaże czytelny komunikat. ## Uruchomienie ```bash pip install -r requirements.txt export LOGIC_URL=http://localhost:8001 uvicorn app.main:app --port 8000 # otwórz http://localhost:8000 ```