# Web Development Course [![Python](https://img.shields.io/badge/Python-3776AB?style=flat&logo=python&logoColor=white)](https://www.python.org/) [![Flask](https://img.shields.io/badge/Flask-000000?style=flat&logo=flask&logoColor=white)](https://flask.palletsprojects.com/) [![SQLite](https://img.shields.io/badge/SQLite-003B57?style=flat&logo=sqlite&logoColor=white)](https://www.sqlite.org/) [![Bootstrap](https://img.shields.io/badge/Bootstrap-7952B3?style=flat&logo=bootstrap&logoColor=white)](https://getbootstrap.com/) Репозиторий содержит выполненные лабораторные работы и домашние задания по курсу "Веб-разработка" в Московском Политехническом университете. **Веб-сайт проекта:** [web-tech.deev.space](https://web-dev.deev.space) **Автор:** Деев Егор Викторович, группа 241-327 ## Структура репозитория ### Лабораторные работы #### [Лабораторная работа №1](https://web-dev.deev.space/lab1) Создание шаблона для отображения записи блога с использованием Flask и Jinja2. Реализация базовой структуры приложения, шаблонов для отображения постов и комментариев. **Стек:** Flask, Jinja2, Bootstrap 5 #### [Лабораторная работа №2](https://web-dev.deev.space/lab2) Работа с данными запроса. Реализация обработки параметров URL, заголовков, cookies и форм. Валидация номера телефона на стороне сервера. **Стек:** Flask, регулярные выражения #### [Лабораторная работа №3](https://web-dev.deev.space/lab3) Реализация аутентификации пользователей с использованием Flask-Login. Создание системы входа, защищенных страниц и управления сессиями. **Стек:** Flask, Flask-Login, session management #### [Лабораторная работа №4](https://web-dev.deev.space/lab4) Разработка CRUD-приложения для управления учетными записями пользователей. Работа с базой данных, валидация данных, хеширование паролей. **Стек:** Flask, Flask-SQLAlchemy, MySQL, bcrypt #### [Лабораторная работа №5](https://web-dev.deev.space/lab5) Авторизация пользователей и формирование статистических отчетов. Реализация системы ролей, декораторов проверки прав, журнала посещений и экспорта в CSV. **Стек:** Flask, Flask-Login, Blueprints, CSV export #### [Лабораторная работа №6](https://web-dev.deev.space/lab6) Доработка образовательного портала: добавление системы отзывов к курсам, рейтинговой системы, пагинации и фильтрации. **Стек:** Flask, Flask-SQLAlchemy, Flask-Migrate, MySQL ### Домашние задания #### [Домашнее задание №1](https://github.com/EDeev/web-dev/tree/main/hws/hw-1) Решение 20 задач на Python: базовые алгоритмы, работа с файлами, регулярные выражения, структуры данных. Покрытие тестами с использованием pytest (60+ тестов). **Темы:** базовый синтаксис Python, работа с файлами, алгоритмы, структуры данных #### [Домашнее задание №2](https://github.com/EDeev/web-dev/tree/main/hws/hw-2) Решение 17 задач на Python: функции, декораторы, генераторы, ООП, работа с файловой системой. Покрытие тестами с использованием pytest (60+ тестов). **Темы:** функции, декораторы, генераторы, ООП, аргументы командной строки, работа с файлами ## План развития - Развертывание всех лабораторных работ на хостинге - Добавление CI/CD pipeline для автоматического тестирования - Документирование API endpoints - Рефакторинг кода с применением паттернов проектирования - Добавление Docker-контейнеризации для упрощения развертывания ## Технологический стек - **Backend:** Python, Flask, Flask-Login, Flask-SQLAlchemy, Flask-Migrate - **Frontend:** HTML5, CSS3, Bootstrap 5, Jinja2 - **База данных:** MySQL, SQLite - **Тестирование:** pytest - **Деплой:** NGINX, Unit ## Контакты - Email: egor@deev.space - Telegram: @Egor_Deev - GitHub: @EDeev ## Лицензия и использование Данный репозиторий создан в образовательных целях. Код доступен для изучения и адаптации без указания авторства. ---
⭐ Если проект оказался полезным, поставьте звездочку на GitHub!

Создано с ❤️ от вашего дорогого - deev.space ©