Отчет о проделанной работе
Тематика сайта:прогноз погоды
p.s. если выдает москва(демо) то сеть(в частности сеть коледжа) на которой сидите блокирует запросы на сервер с данными
Процесс создания
1.Создания основ макета сайта (изменяющийся фон под восход солнца и добавления статичных данных из воздуха и разделения на 3 листа:"сегодня","7 дней"," детали"
Вот промпт:Создай полноценный многостраничный сайт прогноза погоды на HTML, CSS и JavaScript
(всё в одном файле с навигацией через JS). Сайт должен состоять из 3 страниц.
🎨 ДИЗАЙН:
- Цветовая палитра: тёмно-синий фон (#0A0F2C), голубые акценты (#4FC3F7),
белый текст, полупрозрачные карточки с blur-эффектом (glassmorphism)
- Шрифт: Inter или Roboto (подключить через Google Fonts)
- Анимации: плавные переходы между страницами, иконки погоды с CSS-анимацией
(облако плавает, солнце вращается)
- Адаптивность: корректное отображение на мобильных и десктопе
- Фон: градиент имитирующий небо, который меняется в зависимости от
«времени суток» (утро/день/вечер/ночь)
📄 СТРАНИЦА 1 — Главная (Сегодня):
- Поиск города (поле ввода + кнопка)
- Большой блок с текущей погодой: город, температура (+18°C), иконка погоды,
ощущается как, влажность, ветер, давление
- Горизонтальный прогноз по часам (каждые 3 часа, 8 блоков)
- Используй демо-данные для Москвы по умолчанию
📄 СТРАНИЦА 2 — Прогноз на 7 дней:
- Заголовок страницы с текущим городом
- 7 карточек (по одной на каждый день): название дня, иконка,
макс/мин температура, описание (ясно / облачно / дождь и т.д.)
- График температуры (нарисовать через Canvas или SVG) — линия
максимальных температур за 7 дней
- Кнопка «Назад» и навигация
📄 СТРАНИЦА 3 — Детали и карта:
- Расширенные показатели: UV-индекс, видимость, точка росы,
- индекс качества воздуха (AQI), фаза луны
- Встроенная карта (iframe с OpenStreetMap или просто стилизованный
- блок-заглушка с координатами)
- Блок восход/закат с визуальной шкалой дня
🧭 НАВИГАЦИЯ:
- Фиксированное меню сверху с тремя пунктами: «Сегодня», «7 дней», «Детали»
- Активный пункт подсвечивается
- Плавный переход между «страницами» через display/opacity
⚙️ ТЕХНИЧЕСКИЕ ТРЕБОВАНИЯ:
- Всё в одном HTML-файле (CSS и JS внутри)
- Все данные — демо (hardcoded), реальное API не нужно
- Код чистый, с комментариями
- Работает без сервера, просто открыть в браузере*.
2.Добавления секретной игры(на солнце на первой странице) и изменение карты на динимичную с облаками(провальная идея)
3.Получение данных с сайта:
- Нахождение сервера и создания API-ключа для подлучения данных для сайта.
- Смена сервера на открытый сайт без API-ключа
Вот промпт:
Роль: Опытный фронтенд-разработчик.
Задача: Полностью перепиши логику работы с API в HTML-файле, заменив OpenWeatherMap (OWM) на бесплатный Open-Meteo API. Вся остальная логика (HTML, CSS, темы, вкладки) и Canvas-игра "ГРОМОВОЙ БЕГУН" должны остаться абсолютно нетронутыми. Верни ПОЛНЫЙ готовый к запуску HTML-код.
Технические требования:
Отказ от ключей и Эндпоинты:
Логика запроса (fetchWeatherData):
- Шаг 1: Запрос к Geocoding API. Получи
latitude, longitude и официальное name. Если города нет -> вызови showNotification.
- Шаг 2: Запрос к Forecast API с параметрами:
• current=temperature_2m,relative_humidity_2m,apparent_temperature,is_day,precipitation,weather_code,wind_speed_10m,surface_pressure,visibility
• hourly=temperature_2m,precipitation_probability,weather_code
• daily=weather_code,temperature_2m_max,temperature_2m_min,sunrise,sunset
• timezone=auto
Маппинг и Парсинг данных:
- Напиши функцию-маппер кодов WMO в привычный для текущего приложения текст и эмодзи (ясно, дождь, гроза, пасмурно), чтобы не сломать логику советов (TIPS) и анимацию
renderCloudMap.
- parseHourly: Собери массивы времени и температур в объекты для 8 ближайших точек (текущий час + 7 следующих). Давление переведи в мм рт. ст. (hPa * 0.750064). Скорость ветра — в км/ч.
- parseForecastDays: Сформируй массив прогноза на 7 дней из параметров
daily.
- Заглушки: Для отсутствующих в Open-Meteo полей (AQI, УФ-индекс, фаза луны) сделай правдоподобные расчеты или статичные заглушки, чтобы верстка в
renderDetails не поехала.
Пиши чистый, оптимизированный код без сокращений.
Вот мой текущий код для рефакторинга:
[ВСТАВЬ СВОЙ HTML-КОД СЮДА]
4.Изменение вкладки "7 дней":
- Создание для каждого дня почасовой прогноз .
- Добавление графика температуры.
5.Измение на вкладке "детали":
- Изменение карты на реалистичную.
- Удаление карты и добавление советов дня.
6.Финальные изменения:
- Измение фона(теперь градиент с темой устройства).
- Добавление умного поиска.
- Авто-запоминие города на устройстве.
Что использовалось
- Основным пощоником в написание кода был Claude-ссылка
- Основной помощник по общим темам и написанию промпта(дабы хватило бесплатного периода) Gemini-ссылка
- Мнение и критика знакомых