# Журнал разработки

Хроника разработки проекта EasyAccess

28 Февраля 2025

## Разработана база данных и серверная часть

Автор: Деев Егор Категория: Backend

Завершена работа над базой данных с использованием PostgreSQL и расширения TimescaleDB. Структура базы данных спроектирована таким образом, чтобы обеспечить эффективное хранение и управление пакетами модификаций, пользовательскими настройками и другими данными расширения.

Реализована серверная часть на языке Go, предоставляющая API для взаимодействия с клиентской частью расширения. Серверная часть обеспечивает аутентификацию пользователей, управление пакетами модификаций и сбор статистики использования.

### Ключевые достижения:

- Спроектирована и реализована схема базы данных с учетом требований проекта
- Разработаны миграции для базы данных, обеспечивающие простое развертывание
- Реализована серверная часть на Go с использованием современных паттернов разработки
- Протестирована производительность базы данных при высоких нагрузках
- Настроена интеграция с Supabase для управления пользователями и аутентификации

ER-диаграмма базы данных
Основные API эндпоинты

Разработанная база данных и серверная часть обеспечивают надежную основу для функционирования всего приложения. Следующим шагом будет интеграция серверной части с клиентской частью расширения для обеспечения полной функциональности проекта.

10 Марта 2025

## Создан интерфейс расширения и маркетплейс

Автор: Сапрыкин Пётр Категория: Frontend

Разработан пользовательский интерфейс браузерного расширения с использованием TypeScript и библиотеки Solid.js. Интерфейс расширения предоставляет удобный доступ к основной функциональности проекта и обеспечивает интуитивно понятное управление пакетами модификаций.

Также создан маркетплейс для обмена пакетами модификаций, позволяющий пользователям публиковать свои пакеты и устанавливать пакеты, созданные другими пользователями. Маркетплейс включает систему рейтингов, поиск и фильтрацию пакетов по различным критериям.

### Основные компоненты пользовательского интерфейса:

- Главный экран расширения с информацией о текущей вкладке и установленных пакетах
- Экран управления пакетами модификаций
- Редактор пакетов для создания и редактирования пакетов модификаций
- Маркетплейс пакетов модификаций
- Система настроек расширения

Главный экран расширения
Маркетплейс пакетов модификаций

Разработанный интерфейс расширения и маркетплейс обеспечивают основу для взаимодействия пользователей с проектом EasyAccess. В следующих этапах разработки планируется расширение функциональности интерфейса и улучшение пользовательского опыта на основе обратной связи.

25 Марта 2025

## Проведен анализ предметной области

Автор: Старков Руслан Категория: Исследование

Проведено исследование предметной области веб-доступности и существующих решений для повышения доступности веб-сайтов. Изучены стандарты и рекомендации по обеспечению веб-доступности, такие как WCAG (Web Content Accessibility Guidelines) и ГОСТ Р 52872-2019.

Выполнен сравнительный анализ существующих аналогов, включая специализированные расширения для доступности и универсальные расширения для модификации веб-страниц. На основе анализа определены ключевые потребности пользователей и уникальные преимущества проекта EasyAccess.

### Основные выводы исследования:

- Существующие решения либо специализируются на отдельных аспектах модификации веб-страниц, либо на ограниченном наборе функций веб-доступности
- Большинство решений в области веб-доступности предлагают лишь базовые настройки, не обеспечивая глубокой модификации страниц
- Отсутствуют комплексные решения, объединяющие CSS, JavaScript и конфигурацию в единые пакеты
- Многие специализированные решения для доступности имеют ограниченную поддержку русского языка

Сравнительная таблица аналогов
Ключевые потребности пользователей

На основе проведенного исследования разработана архитектура проекта EasyAccess, определены ключевые компоненты системы и спланированы этапы разработки. Результаты исследования подтверждают актуальность проекта и его уникальные преимущества по сравнению с существующими решениями.

15 Апреля 2025

## Интеграция модулей обработки аудио и документов

Автор: Петрачков Владимир Категория: Backend

Завершена работа над модулями обработки аудио и документов для расширения EasyAccess. Модули разработаны на Python с использованием современных библиотек машинного обучения и контейнеризованы с помощью Docker для упрощения развертывания.

Компонент распознавания голоса позволяет пользователям управлять веб-сайтами с помощью голосовых команд, что особенно важно для людей с двигательными нарушениями. Модуль обработки документов обеспечивает распознавание текста из изображений и PDF-файлов, делая их содержимое доступным для программ экранного доступа.

### Ключевые особенности модулей:

- Использование gRPC для эффективного взаимодействия между компонентами на разных языках программирования
- Оптимизация моделей распознавания для работы в браузерном окружении
- Поддержка различных форматов документов (PNG, JPG, PDF) с извлечением структурированного текста
- Реализация системы кэширования для улучшения производительности
- Интеграция с основным API расширения через REST-интерфейсы

Архитектура модуля обработки аудио
Процесс оптического распознавания текста

Интеграция модулей обработки аудио и документов существенно расширяет функциональность расширения EasyAccess, делая его полноценным решением для обеспечения доступности веб-контента. Следующим шагом будет оптимизация производительности и улучшение пользовательского опыта при работе с этими функциями.

30 Апреля 2025

## Система безопасности и интеграция с Supabase

Автор: Шмыговский Никита Категория: Безопасность

Разработана система безопасности для расширения EasyAccess и интегрирована платформа Supabase для аутентификации пользователей и хранения данных. Архитектура безопасности обеспечивает надежную защиту пользовательской информации и предотвращает несанкционированный доступ к функциям расширения.

Особое внимание уделено безопасности при инъекции скриптов в веб-страницы, что является критически важным аспектом работы расширения. Реализованы механизмы проверки и валидации пакетов модификаций перед их применением, а также изоляция выполнения скриптов для предотвращения конфликтов с основным кодом страницы.

### Основные компоненты системы безопасности:

- Безопасная аутентификация через Supabase с использованием JWT-токенов
- Разделение прав доступа и ролевая модель для разных типов пользователей
- Валидация и санитизация всех пользовательских входных данных
- Защищенное хранение пользовательских настроек в локальном хранилище
- Система проверки пакетов модификаций на потенциально вредоносный код
- Механизмы изоляции скриптов при их выполнении в контексте веб-страниц

Схема архитектуры безопасности
Интеграция аутентификации с Supabase

Реализованная система безопасности обеспечивает надежную защиту как пользовательских данных, так и веб-страниц, на которых применяется расширение. Интеграция с Supabase предоставляет масштабируемую и удобную инфраструктуру для управления пользователями и данными без необходимости разрабатывать эти системы с нуля.

10 Мая 2025

## Тестирование расширения и исправление ошибок

Авторы: Момина Антонина, Николенко Дарья, Старков Руслан Категория: QA

Проведено комплексное тестирование расширения EasyAccess на различных веб-сайтах и в разных браузерах. В процессе тестирования были выявлены и исправлены различные ошибки и проблемы с совместимостью, что позволило повысить стабильность и надежность работы расширения.

Особое внимание было уделено тестированию доступности, чтобы убедиться, что расширение действительно улучшает использование веб-сайтов для людей с различными ограничениями. Для этого были привлечены потенциальные пользователи с ограниченными возможностями, которые предоставили ценную обратную связь.

### Основные направления тестирования:

- Функциональное тестирование всех компонентов расширения
- Тестирование совместимости с различными браузерами (Chrome, Edge, Firefox)
- Проверка работы на популярных веб-сайтах и порталах
- Тестирование пользовательского интерфейса на доступность
- Проверка корректности работы пакетов модификаций
- Тестирование безопасности и производительности

Схема процесса тестирования
Система отслеживания ошибок

В результате тестирования было выявлено и исправлено более 30 ошибок и проблем, что значительно повысило качество расширения. Обратная связь от потенциальных пользователей позволила лучше понять их потребности и внести соответствующие улучшения в интерфейс и функциональность расширения.