Files
easy-png-tools2/docs/backlog.md
T
2026-08-24 08:49:25 +05:00

3.6 KiB

Backlog

1. Популярность инструментов — оценка: S

Поле popularity (число) в записи реестра; проставить всем текущим инструментам значения вручную (crop/resize/rescale выше остальных).

  • Сортировка выдачи поиска и каталога: сначала популярные среди равного скоринга.
  • Опционально: блок «Популярные» под героем поиска на главной.

2. Иконки инструментов — оценка: M

У каждой записи поле icon; отображается в результатах поиска, каталоге /list-tools, легендах шагов цепочки.

  • Источник иконок: готовый открытый набор (Lucide, MIT) — подобрать по смыслу для всех инструментов; недостающие — нейтральная заглушка.
  • Рендер одним SVG-спрайтом, без отдельных файлов на иконку.
  • Кропотливая часть — подбор 50 осмысленных иконок, техника тривиальна.

3. Карточки результатов поиска — оценка: S

Заменить строки выдачи на карточки: иконка слева, название и описание справа; сетка в одну-две колонки в зависимости от размера героя.

  • Зависимость: лучше делать после №1 (иконка), но можно раньше с плейсхолдером.
  • Сохранить клавиатурную навигацию ↑↓ Enter Esc и подсветку активной карточки.

4. Несколько языков — оценка: L, разбита на подзадачи

4a. Инфраструктура i18n — M

Модуль словарей (locales/ru.ts, locales/en.ts), функция перевода с фолбэком на базовый язык, состояние активной локали (localStorage), переключатель в шапке, обновление <html lang>.

4b. Перевод каркаса интерфейса — S/M

Шапка, кнопки, подписи полей и состояний («Результат появится здесь», тексты ошибок исполнителя), главная-герой, страница каталога.

4c. Перевод контента реестра — L по объёму, механическая

Вынести title/description инструментов и label/options параметров в словари локалей с фолбэком. Объём: ~51 инструмент плюс параметры — основной трудозатратный кусок волны.

4d. Поиск по любому языку — M

Матчинг запроса против названий/описаний во всех поддерживаемых локалях сразу (не только активной); нормализация: нижний регистр, ё→е, снятие диакритики (NFD). Скоринг существующий сохраняется, лучшая локаль даёт балл.

Транслитерация ru↔en наизусть — не входит, отдельно при необходимости.