yandex_lyceum/README.md
2025-07-01 02:07:58 +03:00

139 lines
5.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Yandex Lyceum Projects 🚀
> Коллекция веб-приложений разработанных в рамках образовательной программы Яндекс Лицея
## 📋 Описание проекта
Репозиторий содержит комплекс учебных проектов, демонстрирующих эволюцию навыков веб-разработки от базовых HTML-страниц до полнофункциональных Flask-приложений с интеграцией внешних API.
## 🏗️ Архитектура решений
### Модули проекта:
#### 1. **WEB.HTML** - Базовая веб-разработка
- Статические HTML-страницы с CSS-стилизацией
- Обработка форм и файловых загрузок
- Маршрутизация и шаблонизация
#### 2. **WEB.HTML 2** - Продвинутая веб-архитектура
- Flask-приложение с расширенной функциональностью
- Интеграция Bootstrap для адаптивного дизайна
- Система аутентификации и авторизации
#### 3. **WEB.HTML flask-wtf** - Профессиональные веб-формы
- Валидация пользовательского ввода
- CSRF-защита
- Обработка сложных форм с множественными полями
#### 4. **Полный поиск** - Геоинформационные сервисы
- Интеграция с Yandex Maps API
- Алгоритмы геопозиционирования
- Динамическое построение карт
## 🛠️ Технологический стек
```
Backend: Flask 2.0+, Python 3.8+
Frontend: HTML5, CSS3, Bootstrap 5.1.3
Forms: Flask-WTF, WTForms
APIs: Yandex Maps Search API
Libraries: Pillow, Requests, Jinja2
```
## 🚀 Быстрый старт
### Установка зависимостей
```bash
pip install -r requirements.txt
```
### Запуск приложений
```bash
# Базовое HTML-приложение
cd "WEB.HTML"
python server.py
# Flask-приложение с шаблонами
cd "WEB.HTML 2"
python server.py
# Приложение с формами
cd "WEB.HTML flask-wtf"
python server.py
```
### Конфигурация API
Для работы геосервисов необходимо настроить API-ключ в `main.py`:
```python
api_key = "your_yandex_api_key_here"
```
## 📁 Структура проекта
```
yandex_lyceum/
├── WEB.HTML/ # Базовые веб-технологии
│ ├── server.py # Flask-сервер
│ ├── static/ # Статические ресурсы
│ └── templates/ # HTML-шаблоны
├── WEB.HTML 2/ # Расширенная веб-архитектура
│ ├── server.py
│ ├── loginform.py # Формы авторизации
│ └── templates/
├── WEB.HTML flask-wtf/ # Профессиональные формы
└── Полный поиск/ # Геоинформационные сервисы
├── main.py # Основная логика
└── delta.py # Вспомогательные алгоритмы
```
## 🎯 Функциональные возможности
### Веб-интерфейсы:
- **Космическая тематика:** Интерактивные страницы миссии колонизации Марса
- **Система профессий:** Каталогизация и фильтрация специальностей
- **Анкетирование:** Комплексные формы с валидацией данных
- **Аутентификация:** Многоуровневая система доступа
### Геосервисы:
- **Поиск объектов:** Интеграция с Yandex Search API
- **Картографирование:** Динамическое построение карт
- **Геопозиционирование:** Алгоритмы расчета координат
## 🔧 Конфигурация
### Переменные окружения:
```bash
FLASK_ENV=development
SECRET_KEY=yandexlyceum_secret_key
YANDEX_API_KEY=your_api_key
```
### Порты по умолчанию:
- **Flask-приложения:** `127.0.0.1:8080`
- **Статические файлы:** автоматическая маршрутизация
## 🏆 Образовательные цели
Проект демонстрирует прогрессивное освоение:
- Фундаментальных веб-технологий
- Серверной архитектуры Flask
- Интеграции внешних API
- Профессиональных практик разработки
## 📄 Лицензия
Образовательный проект в рамках программы Яндекс Лицея
## 👨‍💻 Автор
**Деев Егор Викторович** - Backend Developer
- GitHub: [@EDeev](https://github.com/EDeev)
- Email: egor@deev.space
- Telegram: [@Egor_Deev](https://t.me/Egor_Deev)
---
<div align="center">
<sub>Разработано в рамках образовательной программы Яндекс Лицея для демонстрации навыков полного цикла веб-разработки</sub>
<p><sub>Создано с ❤️ от вашего дорогого - deev.space ©</sub></p>
</div>