mirror of
https://github.com/EDeev/yandex_lyceum.git
synced 2026-06-15 19:11:03 +03:00
139 lines
5.7 KiB
Markdown
139 lines
5.7 KiB
Markdown
# 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>
|