Details

Title Разработка качественного клиентского интерфейса для веб приложения: выпускная квалификационная работа бакалавра: направление 09.03.04 «Программная инженерия» ; образовательная программа 09.03.04_01 «Технология разработки и сопровождения качественного программного продукта» = Development of a high-quality client interface for web application
Creators Муратов Алексей Романович
Scientific adviser Шемякин Илья Александрович
Organization Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Imprint Санкт-Петербург, 2026
Collection Выпускные квалификационные работы ; Общая коллекция
Subjects пользовательский интерфейс ; микроблог ; одностраничное приложение ; SPA ; React ; Redux Toolkit ; TypeScript ; Tailwind CSS ; эвристики Нильсена ; оптимистичные обновления ; user interface ; microblog ; single-page application ; Nielsens heuristics ; optimistic updates
Document type Bachelor graduation qualification work
Language Russian
Level of education Bachelor
Speciality code (FGOS) 09.03.04
Speciality group (FGOS) 090000 - Информатика и вычислительная техника
DOI 10.18720/SPBPU/3/2026/vr/vr26-3503
Rights Доступ по паролю из сети Интернет (чтение, печать, копирование)
Additionally New arrival
Record key ru\spstu\vkr\42696
Record create date 8/21/2026

Allowed Actions

Action 'Read' will be available if administrator prepare required files

Action 'Download' will be available if you login or access site from another network

Group Anonymous
Network Internet

Данная работа посвящена проектированию и реализации клиентской части социальной сети с фокусом на публикацию и потребление коротких сообщений. Актуальность работы обусловлена тем, что современные крупные платформы отошли от первоначальной концепции микроблогинга в пользу перегруженных интерфейсов с множеством дополнительных сервисов, алгоритмическими лентами и высокой когнитивной нагрузкой на пользователя. В рамках работы был проведён анализ четырёх существующих платформ: VK, X, Mastodon и Пикабу. Для каждой платформы выделены достоинства и недостатки в контексте задачи микроблогинга. На основе полученных выводов был сформирован технологический стек, включающий TypeScript, React, Redux Toolkit, Vite и Tailwind CSS. Каждый инструмент выбран по результатам сравнения с актуальными альтернативами. Приложение построено по принципу SPA с централизованным управлением маршрутами через React Router. Глобальное состояние управляется через Redux Toolkit и разделено на слайсы auth и posts. Взаимодействие с сервером реализовано через Axios и createAsyncThunk. В архитектуре применено разделение компонентов на три уровня: атомарные, составные и страничные, что обеспечило переиспользование кода. Реализованы ключевые функции: бесконечная лента постов через Intersection Observer API с параметрами page и size, система поиска с поддержкой хэштегов и механизмом debounce, оптимистичные обновления для лайков, публикации и удаления постов, управление профилем с загрузкой аватара в формате base64 и функцией обрезания изображения. Оценка качества интерфейса проведена по десяти эвристикам Якоба Нильсена. Дополнительно выполнено модульное тестирование ключевых компонентов с покрытием около восьмидесяти процентов кода. Для достижения данных результатов в работе были использованы следующие информационные технологии: TypeScript, React, Redux Toolkit, Vite, Tailwind CSS, React Router, Axios, Jest, React Testing Library, Intersection Observer API, History API, Figma, GitHub.

The given work is devoted to the design and implementation of the client side of a social network focused on publishing and consuming short messages. The relevance of the work is driven by the fact that modern large platforms have moved away from the original concept of microblogging in favor of overloaded interfaces with numerous additional services, algorithmic feeds, and high cognitive load on users. The study includes an analysis of four existing platforms: VK, X, Mastodon, and Pikabu. Advantages and disadvantages of each platform were identified in the context of the microblogging task. Based on the findings, a technology stack was formed, including TypeScript, React, Redux Toolkit, Vite, and Tailwind CSS. Each tool was selected through comparison with current alternatives. The application is built as an SPA with centralized routing via React Router. Global state is managed through Redux Toolkit and divided into auth and posts slices. Server communication is implemented via Axios and createAsyncThunk. The architecture applies a three-level component structure: atomic, composite, and page components, which ensures code reusability. Key features implemented include infinite post feed using the Intersection Observer API with page and size parameters, a search system with hashtag support and a debounce mechanism, optimistic updates for likes, post publication, and deletion, and profile management with avatar upload in base64 format and image cropping functionality. The interface quality was evaluated using Jakob Nielsens ten heuristics. Additionally, module testing of key components was performed with approximately eighty percent code coverage. The following information technologies were used in the work: TypeScript, React, Redux Toolkit, Vite, Tailwind CSS, React Router, Axios, Jest, React Testing Library, Intersection Observer API, History API, Figma, GitHub.

Network User group Action
ILC SPbPU Local Network All
Download
Internet Authorized users SPbPU
Download
Internet Anonymous
...