24 Создание простых веб-приложений на основе библиотеки Streamlit
24.1 Введение
В ходе биоинформатических исследований учёные создают инструменты для решения некоторой задачи. Программа - конечный продукт чисто биоинформатических исследований. Программа может быть создана как для дургих биоинформатиков, так и для коллег из других областей, которые обладают меньшими техническими компетенциями. Тогда наиболее оптимальный вариант решения будет разработка веб-приложения, так как его просто распространять, не требует установки и каких-либо дополнительных технических знаний от конечного пользователя. Однако такие приложения сложны в разработке и требуют больших знаний от разработчика. Как минимум, знание сетевых технологий и нескольких языков программирования и разметки. Это настолько сложная задача, что в промышленной разработке за взаимодействие с пользователем (front-end) и программирование выполнения задач пользователя (back-end) отвечают разные команды людей. Упростить задачу призваны фреймворки для веб-разработки. Их большое количество для самых разных языков программирования. Какой из них использовать, зависит от задачи и предпочтений вас и вашей команды.
Примеры фреймворков
Python - Flask, Django, FastAPI
Java - Spring
C++ - Poco
JavaScript - Vue.js, Angular, React
В качестве обучающего материала мы возьмем библиотеку Streamlit, которая создана для создания простых приложений и созданию дашбоардов (dashboards) - панелей для интерактивного анализа данных.
Для начала работы зайдите в аккаунт на официальном сайтебиблиотеки. Регистрироваться необязательно, платформа поддерживает Google и GitHub OAuth. Для работы нам также потребуется аккаунт GitHub. Простота библиотеки заключается в том, что добавление графических элементов отображения и управления происходит как простое объявление переменной. Библиотека содержит игровую площадку с несколькими примерами, на которой вы можете тестировать ваши идеи.
Для того, чтобы работать над нашим приложением в облаке и сразу делать его общедоступным (деплоить (deploy) на сервер Streamlit) перейдите по ссылке. Создайте новое приложение и свяжите его с вашим профилем GitHub. В случае успеха у вас должно открыться окно профиля с новым приложением (@fig-streamlit_profile) и онлайн VSCode в облачном окружении GitHub(@fig-github_vscode)
24.2 Задание
Разработать дашбоард под датасет пассажиров Титаника. Примеры для вдохновления можно найти здесь.
Требования:
Должна быть представлена описательная статистика: стобцы и тип данных в них, форма таблицы,
Не менее 5 графиков, 3 разных типов.
Не менее одного графика, который реагирует на пользовательский ввод
Вывод n-го, задаваемого пользователем количества строк из начальной таблицы.
24.3 Защита
Будет проходить индивидуально, с обоснованием выбранных решений и вопросами по коду.

