diff --git a/docs/backlog.md b/docs/backlog.md index 338a69b..46d770c 100644 --- a/docs/backlog.md +++ b/docs/backlog.md @@ -4,6 +4,33 @@ > находки — `docs/plan-seo.md`, `docs/plan-platform.md`, > `docs/plan-fields-audit-fixes.md`, `docs/tools-audit.md`, `docs/decisions.md`. +## UX — приоритетная очередь + +Порядок согласован: A (сброс параметров) → C (контролы полей) → B (загрузка +исходника) → E (download) → D (pipeline). Делать по одной, сверху вниз. + +- [ ] **A. Сброс параметров при загрузке нового изображения** — crop, resize (но + скорее всего все инструменты): при загрузке нового файла сбрасываются + размеры, настроенные пользователем. Решить, что сбрасывать (размеры под + новый исходник), а что сохранять (толерансы, цвета, форматы) +- [ ] **C1. range slider field** — добавить поле для ввода цифр и кнопку сброса + значения +- [ ] **C2. keep Aspect field** — пересчитывать второе поле, учитывать какое + было изменено +- [ ] **C3. пресеты размеров** — split-into-parts-png, resize (может еще + какие-то): размеры из заранее одобренного списка — 16х16, 32х32, 64х64 как + минимум, единый список с задачей «увеличить максимальные значения» (для + инди-разработчиков, стандартные тайлы) +- [ ] **B. Загрузка исходника** — ctrl+v и drag-and-drop (dropzone) +- [ ] **E. Download** — кнопка сразу пишет текущий формат, селектор + PNG/JPG/WebP/BMP для всех инструментов, предупреждение при несовместимости + формата (альфа-канал); описание формата из блока исходник/результат + переезжает в кнопку. Райз «Download» → S1f (`docs/plan-seo.md` §4) +- [ ] **D. Pipeline** — процесс редактирования и настройки: drag-n-drop, + удаление, добавление инструментов; переход «один инструмент ↔ pipeline» + без перезагрузки. Следом — идеи 1–3 (смена первого инструмента, + сворачивание шагов, несколько цепочек) + ## lint и прочие правила - [ ] `tseslint.config(...)` deprecated: сигнатура @@ -18,12 +45,6 @@ - [ ] split-into-parts-png - увеличить максимальные значения, плохо работает для нарезки ассетов -- [ ] crop, resize (но скорее всего все инструменты) - при загрузке нового - изображения сбрасывает размеры, настроенные пользователем -- [ ] split-into-parts-png, resize (может еще какие-то) - возможность указывать - размеры из заранее одобренного списка размеров - 16х16, 32х32, 64х64 как - минимум, может еще какие-то размеры добавить, единый список из предыдущей - задачи - (для инди разработчиков, стандартные тайлы часто делаются) - [ ] e2e: `i18n.spec.ts` и `text-and-verdicts.spec.ts` дублируют локаторы из `helpers/page.ts` вместо вызова — правило «спека зовёт helpers» (`docs/testing-strategy.md`, раздел 5) @@ -51,11 +72,6 @@ `ondownloadtxt`, `ondownload`, - [ ] Переделать внешний вид инструментов без настроек, например Remove alpha channel PNG "remove-alpha-channel-png". Сейчас выглядит слишком пустым. -- [ ] Убрать описание формата в отображении исходник\результат - это должно быть - в кнопке Download -- [ ] Кнопка download должна сразу писать какой формат сейчас, быть с селектором - формата и подсвечивать предупреждение если формат не совместим (альфа - канал) - [ ] Пересмотреть поля - Plate, Position, Font Style - сейчас второй label - [ ] Font Style - обдумать выбор шрифта (google fonts???) как организовать шрифты с кириллицей? сделать галочку "только с кириллицей"??? (решение о @@ -64,13 +80,8 @@ - [ ] поле ввода текста - сделать по умолчанию нормального размера, а не одну строку для svg - форматирование или подсветку синтаксиса??? для bin\hex - форматирование по колонкам??? для hex\bytes\rgba - пример в placeholder -- [ ] сделать загрузку картинки исходника по ctrl+v и drag-and-drop (dropzone) - [ ] прикрутить кастомный color picker, добавить прозрачность (range?) - [ ] проверить настройки range slider на crop-png - слишком большие значения -- [ ] для range slider field - добавить поле для ввода цифр и кнопку сброса - значения -- [ ] для keep Aspect field - пересчитывать второе поле, учитывать какое было - изменено - [ ] обновить страницу kit или сделать storybook - [ ] Свести convert-страницы (`convert-png-to-jpg`, `convert-png-to-webp`, `png-to-bmp`) на один инструмент `convert` — зависит от S1f @@ -79,9 +90,6 @@ `PageStep` умеет только `{ id, params? }`, поэтому страницы на общий `id` получат одинаковый формат вывода. Нужно научить шаг переопределять формат вывода -- [ ] придумать процесс редактирования и настройки pipeline - drag-n-drop, - удаление, добавление инструментов. переход один инструмент - pipeline без - перезагрузки - [ ] `PreviewTile`: высота плитки задана только `min-height: clamp(...)`, поэтому она не следует за пропорциями результата — широкий результат уезжает в узкую полосу, а высокий упирается в `max-height: 100vh`. Нужно, @@ -107,8 +115,6 @@ и порядок — `docs/plan-seo.md` §6, R1/R2) - [ ] снять `noindex` со страниц инструментов, когда будут sitemap, canonical и контент (S1h; блокирует индексацию всего сайта) — `docs/plan-seo.md` §4 -- [ ] download с селектором формата PNG/JPG/WebP/BMP для всех инструментов (райз - «Download» → S1f) - [ ] форматные страницы по конкурентным слагам (`crop-jpeg`, …) — только по вордстату с уникальным контентом; редиректы только для опечаток и переименований уже опубликованных страниц; клонов с canonical не делать