Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions IMPROVEMENT_PLAN.md
Original file line number Diff line number Diff line change
Expand Up @@ -833,6 +833,15 @@ The phase is iterative: every iteration is its own branch, tests (TDD, e2e for s
5. ✅ **v0.9 — appearance** (branch `phase-10-v09`): UI settings on the server (`/api/v1/settings`), the accent color, density, fonts, the environment frame, a theme editor with import and export, `prefers-contrast`, Stylelint on colors, the component showcase, visual snapshots of themes. — *The interface language is kept in the settings too. Stylelint pulls in `braces` with an open advisory and no fixed version (a dev dependency only): to be kept in mind for `npm audit` in v1.0.*
6. ✅ **v1.0 — readiness** (the criteria below; branch `phase-10-v10`): integrations and instructions (Laravel, Symfony, WordPress, Bitrix), freezing format v2 and API v1, CI — CodeQL, `govulncheck`, `npm audit`, attestations, SBOM, fuzz, `paths` filters; release notes, issue/PR templates, publishing `client-php` 2.0.0 and the releases. — *The freeze: `spec/frozen/v1.0`, `make spec-compat` (oasdiff) and a test of v2 logs. Left to the owner: publishing `client-php` 2.0.0 (a repository for the split, a deploy key, Packagist), publishing the draft releases, protecting `main`, turning on private vulnerability reporting (`SECURITY.md` and the issue templates link to it). What is postponed is in `ROADMAP.md`.*

### 8.2o After 1.0

Work after the 1.0 release, each part on its own branch and through a pull request (the user merges).

1. ✅ **v1.0.1 — hotfix**: the library of a release reported `2.0.0-dev`; `scripts/release-check.sh` refuses a stable tag with a pre-release library.
2. ✅ **CI and builds**: the fatal error test of the library is skipped where PHP itself exits with 1 on running out of memory (setup-php builds of PHP 7.4–8.1 from October 2026); `make desktop-deps` checks the C compiler, GTK and WebKitGTK and prints how to install them on the system (apt, dnf, pacman, zypper, apk; GTK3 where WebKitGTK 6.0 is missing).
3. ✅ **Documents in two languages**: every document is a pair `X.md` (English) / `X.ru.md` (Russian) with a language switcher; this plan is translated, `IMPROVEMENT_PLAN.ru.md` is the Russian original; the repository has an English description, topics and badges.
4. ✅ **UI redesign** (branch `feat/ui-redesign`): a sidebar with the projects, servers and tools that folds to a rail of icons; two columns below 1360px, one below 900px; Lucide icons; shared controls (`ui/src/styles/controls.css`) and new theme tokens with checked contrast; help in the app (`ui/src/lib/help.ts`: how it works, the library, projects, servers, pushing logs, reading requests, keys) linked from the dialogs and empty states; first steps in an empty viewer; CLI runs named by their script (`argv` in the feed API, compatible with 1.0). — *Found along the way: the port field of a new server and the fields of a new project ran out of the dialog (an e2e test now checks every field at 1440, 900 and 420px); a tall dialog did not fit the window.*

### 8.3 Dependencies and timing

```
Expand Down
9 changes: 9 additions & 0 deletions IMPROVEMENT_PLAN.ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -833,6 +833,15 @@ Server (local | ssh | http) — тип подключения, парамет
5. ✅ **v0.9 — оформление** (ветка `phase-10-v09`): настройки UI на сервере (`/api/v1/settings`), акцентный цвет, плотность, шрифты, рамка окружения, редактор тем с импортом и экспортом, `prefers-contrast`, Stylelint на цвета, витрина компонентов, визуальные снапшоты тем. — *Язык интерфейса тоже хранится в настройках. Stylelint тянет `braces` с открытым advisory без исправленной версии (только dev-зависимость): учесть при `npm audit` в v1.0.*
6. ✅ **v1.0 — готовность** (критерии ниже; ветка `phase-10-v10`): интеграции и инструкции (Laravel, Symfony, WordPress, Bitrix), заморозка формата v2 и API v1, CI — CodeQL, `govulncheck`, `npm audit`, attestations, SBOM, fuzz, фильтры `paths`; release notes, шаблоны issue/PR, публикация `client-php` 2.0.0 и релизов. — *Заморозка: `spec/frozen/v1.0`, `make spec-compat` (oasdiff) и тест логов v2. Осталось владельцу: публикация `client-php` 2.0.0 (репозиторий для split, deploy key, Packagist), публикация черновиков релизов, защита `main`, включить private vulnerability reporting (на него ссылаются `SECURITY.md` и шаблоны issue). Отложенное — в `ROADMAP.md`.*

### 8.2o После 1.0

Работа после релиза 1.0: каждая часть — своя ветка и pull request (сливает пользователь).

1. ✅ **v1.0.1 — исправление**: библиотека в релизе называла себя `2.0.0-dev`; `scripts/release-check.sh` не даёт выпустить стабильный тег с предварительной версией библиотеки.
2. ✅ **CI и сборка**: тест фатальной ошибки библиотеки пропускается там, где сам PHP при нехватке памяти выходит с кодом 1 (сборки setup-php для PHP 7.4–8.1 октября 2026); `make desktop-deps` проверяет компилятор C, GTK и WebKitGTK и подсказывает, как их поставить в этой системе (apt, dnf, pacman, zypper, apk; GTK3, где нет WebKitGTK 6.0).
3. ✅ **Документы на двух языках**: каждый документ — пара `X.md` (английский) / `X.ru.md` (русский) с переключателем языка; план переведён, `IMPROVEMENT_PLAN.ru.md` — русский оригинал; у репозитория английское описание, топики и бейджи.
4. ✅ **Редизайн интерфейса** (ветка `feat/ui-redesign`): боковая панель с проектами, серверами и инструментами, сворачивается в полоску иконок; две колонки уже 1360px, одна — уже 900px; иконки Lucide; общие элементы управления (`ui/src/styles/controls.css`) и новые токены темы с проверкой контраста; справка в приложении (`ui/src/lib/help.ts`: как это работает, библиотека, проекты, серверы, отправка логов, чтение запросов, клавиши) со ссылками из диалогов и пустых состояний; первые шаги в пустом просмотрщике; CLI-запросы называются по скрипту (`argv` в API ленты, совместимо с 1.0). — *Найдено по ходу: поле порта нового сервера и поля нового проекта вылезали за диалог (теперь e2e проверяет каждое поле на 1440, 900 и 420px); высокий диалог не помещался в окно.*

### 8.3 Зависимости и сроки

```
Expand Down
8 changes: 5 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,9 @@ The one-liners work from the first published release that carries these files (v

Other flags: `--addr` (default `127.0.0.1:8820`; another address needs a token), `--token` (better `$WAPP_DEBUGGER_TOKEN`, out of the process list), `--db` (the database, by default in the user config directory; `secrets.json` with tokens of HTTP servers lives next to it), `--scan-interval` (fallback rescan of local directories, 5 s). `wapp-debugger serve --help` lists them all.

The UI speaks English and Russian and has light, dark and high-contrast themes (switches in the header; "System" follows the color scheme and the contrast setting of the OS). **Appearance** in the header sets an accent color over any theme, the density of lists, the font size, the font of code (one installed on your computer) and a frame around the window in the color of stage and prod. The **theme editor** there makes themes of your own: colors over a built-in theme with a live preview and a contrast check, shared as `.theme.json` files (Export, Import). The viewer keeps these settings, so every browser and the desktop app look the same. Search looks for words in messages and their context or for a part of the URL.
The window has a sidebar with the projects and servers (it folds to a rail of icons) and three panes: the feed, the request and the message. **Help** (?) at the bottom of the sidebar explains how the viewer works and how to connect the library, add a project or a server and push logs; with no projects yet the feed shows the first steps.

The UI speaks English and Russian and has light, dark and high-contrast themes (switches at the bottom of the sidebar; "System" follows the color scheme and the contrast setting of the OS). **Appearance** next to them sets an accent color over any theme, the density of lists, the font size, the font of code (one installed on your computer) and a frame around the window in the color of stage and prod. The **theme editor** there makes themes of your own: colors over a built-in theme with a live preview and a contrast check, shared as `.theme.json` files (Export, Import). The viewer keeps these settings, so every browser and the desktop app look the same. Search looks for words in messages and their context or for a part of the URL.

## Projects on other servers

Expand Down Expand Up @@ -150,13 +152,13 @@ The same viewer in a window, without a network port. Installers are attached to
- Windows: SmartScreen → **More info** → **Run anyway**;
- Linux: `sudo apt install ./wapp-debugger-desktop_*.deb`, or `chmod +x` the AppImage.

What the desktop adds to the browser version (**Settings** in the header):
What the desktop adds to the browser version (**Settings** at the bottom of the sidebar):

- an icon in the tray (the menu bar on macOS) with the number of new requests with errors and a menu of the last ones; closing the window keeps the app there;
- system notifications about new requests with errors — or warnings too — in all or chosen projects; a burst comes as one notice; a click opens the request;
- links `wapp-debugger://open?project=3&request=42&message=1001` open the request in the app (from a chat, a ticket, a script); the installers register the scheme, a second start hands the link to the running window;
- start at login; the window comes back where it was;
- a notice in the header when a newer version is out (GitHub Releases once a day; can be switched off).
- a notice at the top of the sidebar when a newer version is out (GitHub Releases once a day; can be switched off).

From source: `make desktop-build` (needs a C compiler and, on Linux, GTK4 + WebKitGTK 6.0; `make desktop-deps` checks them and prints how to install what is missing on your system), then `dist/wapp-debugger-desktop [--logs-dir …]`; `--logs-dir` is optional here too. `make desktop-package` builds the installers of the current system; more in [desktop/README.md](desktop/README.md).

Expand Down
8 changes: 5 additions & 3 deletions README.ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,9 @@ wapp-debugger serve --logs-dir /var/www/app/tmp/logs # откройте http:/

Другие флаги: `--addr` (по умолчанию `127.0.0.1:8820`; другой адрес требует токен), `--token` (лучше `$WAPP_DEBUGGER_TOKEN`, чтобы токена не было в списке процессов), `--db` (база, по умолчанию в папке конфигов пользователя; рядом с ней — `secrets.json` с токенами HTTP-серверов), `--scan-interval` (резервное пересканирование локальных папок, 5 с). Полный список — `wapp-debugger serve --help`.

Интерфейс на английском и русском, темы — светлая, тёмная и высококонтрастная (переключатели в шапке; «Системная» следует цветовой схеме и настройке контраста ОС). **Оформление** в шапке задаёт акцентный цвет поверх любой темы, плотность списков, размер шрифта, шрифт кода (установленный на компьютере) и рамку окна цвета окружения на stage и prod. Там же **редактор тем**: свои цвета поверх встроенной темы с живым предпросмотром и проверкой контраста, обмен темами файлами `.theme.json` («Экспорт», «Импорт»). Настройки хранит просмотрщик, поэтому во всех браузерах и в десктоп-версии они одинаковые. Поиск ищет слова в сообщениях и их контексте или часть URL.
Слева — панель проектов и серверов (сворачивается в полоску иконок), справа — три панели: лента, запрос и сообщение. **Справка** (?) внизу панели объясняет, как устроен просмотрщик и как подключить библиотеку, добавить проект или сервер и отправлять логи; пока проектов нет, лента показывает первые шаги.

Интерфейс на английском и русском, темы — светлая, тёмная и высококонтрастная (переключатели внизу боковой панели; «Системная» следует цветовой схеме и настройке контраста ОС). **Оформление** рядом с ними задаёт акцентный цвет поверх любой темы, плотность списков, размер шрифта, шрифт кода (установленный на компьютере) и рамку окна цвета окружения на stage и prod. Там же **редактор тем**: свои цвета поверх встроенной темы с живым предпросмотром и проверкой контраста, обмен темами файлами `.theme.json` («Экспорт», «Импорт»). Настройки хранит просмотрщик, поэтому во всех браузерах и в десктоп-версии они одинаковые. Поиск ищет слова в сообщениях и их контексте или часть URL.

## Проекты на других серверах

Expand Down Expand Up @@ -149,13 +151,13 @@ wapp-debugger serve --logs-dir /var/www/app/tmp/logs # откройте http:/
- Windows: SmartScreen → **Подробнее** → **Выполнить в любом случае**;
- Linux: `sudo apt install ./wapp-debugger-desktop_*.deb` или `chmod +x` для AppImage.

Что десктоп добавляет к браузерной версии (**«Настройки»** в шапке):
Что десктоп добавляет к браузерной версии (**«Настройки»** внизу боковой панели):

- значок в трее (в строке меню на macOS) с числом новых запросов с ошибками и меню последних; закрытое окно оставляет приложение там;
- системные уведомления о новых запросах с ошибками — или и с предупреждениями — во всех или выбранных проектах; всплеск приходит одним уведомлением; клик открывает запрос;
- ссылки `wapp-debugger://open?project=3&request=42&message=1001` открывают запрос в приложении (из чата, задачи, скрипта); установщики регистрируют схему, повторный запуск передаёт ссылку уже открытому окну;
- запуск при входе в систему; окно открывается там, где было;
- сообщение в шапке о новой версии (GitHub Releases раз в сутки; отключается).
- сообщение вверху боковой панели о новой версии (GitHub Releases раз в сутки; отключается).

Из исходников: `make desktop-build` (нужен компилятор C, а в Linux ещё GTK4 + WebKitGTK 6.0; `make desktop-deps` проверяет их и подсказывает, как поставить недостающее в вашей системе), затем `dist/wapp-debugger-desktop [--logs-dir …]`; `--logs-dir` и здесь необязателен. `make desktop-package` собирает установщики текущей системы; подробнее — в [desktop/README.ru.md](desktop/README.ru.md).

Expand Down
6 changes: 3 additions & 3 deletions ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,11 @@ What 1.0 has and what comes after it. The detailed working plan is

**Viewer**

- Panels that resize and collapse; servers in the tree of projects; a narrow layout.
- Panels that resize (the sidebar already folds and the layout narrows; servers group their projects).
- A page of project settings with path mapping (server or container ↔ local copy) and its check.
- A status line: the live stream, each server, files not imported yet, disk space.
- Onboarding for an empty viewer; a raw JSON tab of a message; an overview and an errors tab of a
request; saved filters and a date range.
- A raw JSON tab of a message; an overview and an errors tab of a request; saved filters and a
date range. (First steps for an empty viewer and help in the app are done.)

**Sources**

Expand Down
6 changes: 3 additions & 3 deletions ROADMAP.ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,11 @@

**Просмотрщик**

- Панели, которые меняют размер и сворачиваются; серверы в дереве проектов; узкая раскладка.
- Панели, которые меняют размер (боковая панель уже сворачивается, узкая раскладка есть; проекты сгруппированы по серверам).
- Страница настроек проекта с маппингом путей (сервер или контейнер ↔ локальная копия) и его проверкой.
- Строка состояния: live-поток, каждый сервер, ещё не импортированные файлы, место на диске.
- Онбординг для пустого просмотрщика; вкладка сырого JSON у сообщения; вкладки обзора и ошибок у
запроса; сохранённые фильтры и диапазон дат.
- Вкладка сырого JSON у сообщения; вкладки обзора и ошибок у запроса; сохранённые фильтры и
диапазон дат. (Первые шаги в пустом просмотрщике и справка в приложении сделаны.)

**Источники**

Expand Down
Binary file modified docs/screenshot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading