Go to file
mirivlad c941f05dab gui: sidebar tree UX fixes — has_children, preserve expanded, double-click, DnD visual
- Backend: add HasChildren field to NodeDTO; ListWorkspaceTree/ListChildren
  populate it by querying CountChildren for container types
- Node repository: add CountChildren(parentID, types...) method
- TreeNode: toggle shown only when has_children (not isContainer); double-click
  on row = expand/collapse; icon click = expand/collapse; drop-valid class via
  DOM classList for DnD highlight; auto-expand collapsed container on 500ms
  hover during drag; auto-scroll near edge during drag
- App.svelte: selectNode no longer resets workspaceTree/expanded; new
  reloadTreePreservingExpanded() helper re-fetches children for all expanded
  nodes after DnD move / delete; deleteWorkspaceNode preserves expanded state
2026-06-03 03:48:53 +08:00
build/linux chore: add wails.json, remove wails3 artifacts, rebuild binaries 2026-06-03 01:48:12 +08:00
cmd gui: sidebar tree UX fixes — has_children, preserve expanded, double-click, DnD visual 2026-06-03 03:48:53 +08:00
contrib/plugins/importer-dokuwiki step 10: plugins system (Lua + templates) + DokuWiki as optional plugin 2026-05-31 11:20:45 +08:00
docs sync_apply FS-first rewrite; CreateNodeFromTemplate rollback; DeleteNodeAndChildren fail on trash errors; PLAN.md update 2026-06-03 02:22:49 +08:00
frontend gui: sidebar tree UX fixes — has_children, preserve expanded, double-click, DnD visual 2026-06-03 03:48:53 +08:00
internal gui: sidebar tree UX fixes — has_children, preserve expanded, double-click, DnD visual 2026-06-03 03:48:53 +08:00
migrations steps 4-6 + doc overhaul: files, notes, GUI, plugins docs 2026-05-30 20:35:04 +08:00
scripts fix: complete vault layout transition — fs_path everywhere, no more spaces/ 2026-06-02 15:43:40 +08:00
.gitignore chore: add wails.json, remove wails3 artifacts, rebuild binaries 2026-06-03 01:48:12 +08:00
README.md steps 4-6 + doc overhaul: files, notes, GUI, plugins docs 2026-05-30 20:35:04 +08:00
build.sh refactor(gui): разделить app.go на binding-файлы по доменам, вынести sync apply 2026-06-02 10:47:38 +08:00
go.mod sync: overhaul sync system — device pairing, server_sequence, auto-sync, dashboards 2026-06-02 02:26:05 +08:00
go.sum gui: add Wails v2 app skeleton 2026-05-31 19:11:20 +08:00
test_smoke_sync.sh test: update smoke test for user auth flow 2026-06-01 23:36:38 +08:00
wails.json chore: add wails.json, remove wails3 artifacts, rebuild binaries 2026-06-03 01:48:12 +08:00

README.md

Верстак

Верстак — локальная программа, где по каждому клиенту или проекту лежат все его файлы, заметки, документы, ссылки, действия и история работ.

Это не замечатель, не CRM, не таск-трекер. Нишевая аудитория — люди, у которых работа организована через дела, а не через задачи:

дело → файлы → заметки → документы → действия → история → вернуться через месяц

Для кого

Один продукт — разные входные двери:

Кто Как видит Верстак
Фрилансер / дизайнер клиентские проекты, файлы, правки, история работ
Мастер по ПК клиенты, устройства, серийники, фото, журнал
Разработчик локальный workspace: заметки, репы, команды, файлы
Писатель / мейкер мастерская проектов: материалы, заметки, версии, история

Универсальные сущности

Базовая модель предельно проста — плагины добавляют функционал:

  • Дело — контекст для всего остального
  • Заметка — Markdown внутри vault
  • Файл / Документ — любой файл, привязанный к делу
  • Действие — кнопка запуска: URL, файл, папка, команда
  • Журнал — записи о затраченном времени

Плагины (шаблоны дел, календарь, канбан, импортёры) расширяют эти сущности без перекомпиляции программы.

Стек

Go + SQLite + Lua (плагины) + Wails + Bubble Tea.

Документация