verstak/docs/01_Product_Spec.md

7.3 KiB
Raw Blame History

Верстак — описание продукта

1. Проблема

У пользователя есть много разнородной рабочей информации:

  • папка work и подпапки;
  • архивы нужных файлов;
  • служебки;
  • договоры;
  • письма;
  • скриншоты;
  • файлы с серийными номерами;
  • инструкции;
  • статьи по установке;
  • скрипты;
  • SQL-фрагменты;
  • заметки в DokuWiki;
  • доступы к серверам и сервисам клиентов;
  • записи о нестандартных действиях;
  • репозитории личных проектов;
  • Godot-проекты;
  • локальные утилиты вроде sshkeeper.

Проблема не только в хранении. Проблема в контексте:

  • что к чему относится;
  • где лежит актуальная версия;
  • где заметка по клиенту;
  • где договор;
  • где скрипт;
  • что было сделано в прошлый раз;
  • сколько примерно времени ушло;
  • что можно сказать человеку, когда он спрашивает “сколько должен?”.

Обычные инструменты закрывают только кусок:

  • Obsidian — заметки, но не рабочий кабинет с документами, действиями и журналом работ;
  • DokuWiki — заметки, но не локальная рабочая оболочка над файлами и программами;
  • CRM — клиенты и продажи, но не личная техническая память;
  • файловый менеджер — файлы, но без смысла;
  • таймтрекер — время, но требует дисциплины;
  • лаунчер — запуск, но не память;
  • Nextcloud — файлы, но не дела.

2. Что такое Верстак

Верстак — local-first рабочий vault, где всё организовано вокруг “дел”.

Дело — это контекст, в который складываются заметки, документы, файлы, действия и история работы.

Примеры дерева:

Клиенты
  ООО Ромашка
    Сайт
      Обзор.md
      Документы
      Скрипты
      Скриншоты
      Журнал работ
    Почта
    Договоры

Личные проекты
  sshkeeper
    Roadmap.md
    Releases
    dist
    Действия
  Tyaplyapiya
    Godot project
    Design notes
    Assets

Рецепты
  MySQL
    Очистка таблиц
    Backup dump
  Сайты
    Backup сайта одной строкой
    Очистка кеша WordPress

Документы
  Служебки
  Договоры
  Серийники

3. Основные сущности

Дело

Главный рабочий контекст.

Поля:

  • название;
  • тип: клиент / проект / рецепт / документальная область / архив / личное;
  • родитель;
  • описание;
  • статус: active / sleeping / archived;
  • теги;
  • связанные ссылки;
  • связанные actions;
  • журнал работ.

Заметка

Обычный Markdown-файл внутри vault.

Примеры:

  • overview.md;
  • nginx.md;
  • mysql-cleanup.md;
  • roadmap.md;
  • access.secret.md.

Документ

Файл внутри дела:

  • docx;
  • xlsx;
  • pdf;
  • odt;
  • png/jpg;
  • zip;
  • любые другие файлы.

В MVP документы открываются системным приложением. Встроенный preview можно добавить позже.

Действие

Кнопка, которую можно запустить из дела:

  • открыть URL;
  • открыть папку;
  • открыть файл;
  • запустить Godot;
  • открыть IDE;
  • запустить sshkeeper;
  • выполнить скрипт;
  • открыть терминал;
  • собрать проект.

Журнал работ

Записи вида:

2026-05-30
Дело: ООО Ромашка / Сайт
Время: примерно 3ч
Описание: обновил витрину сайта, товары, баннеры, проверил отображение.

Активность

Сырые следы:

  • открыто дело;
  • открыта заметка;
  • изменён файл;
  • запущено действие;
  • открыта папка;
  • later: активное окно;
  • later: browser URL;
  • later: sshkeeper session.

4. Основные сценарии

Клиентская работа

  1. Открыть дело клиента.
  2. Посмотреть заметки и документы.
  3. Открыть админку сайта.
  4. Запустить sshkeeper или скрипт.
  5. Добавить скриншоты.
  6. Записать работу.
  7. Сформировать текст отчёта.

Личный проект

  1. Открыть проект sshkeeper.
  2. Нажать “Открыть IDE”.
  3. Нажать “Собрать”.
  4. Посмотреть roadmap.
  5. Добавить заметку “на чём остановился”.

Импорт DokuWiki

  1. Выбрать data/pages.
  2. Выбрать data/media.
  3. Импортировать namespaces как дерево.
  4. Сохранить оригиналы.
  5. Постепенно разобрать по делам.

Восстановление времени

Пользователь не нажимал таймер, но вечером видит:

Похоже, ты работал по делу “ООО Ромашка / Сайт”:
14:0517:12, примерно 3ч.

Основания:
- открывалась админка сайта;
- менялся catalog.xlsx;
- запускался sshkeeper profile;
- создавались скриншоты.

[Записать 3ч] [Исправить] [Игнорировать]

5. Что точно не делать в начале

  • не делать SaaS;
  • не делать multi-user CRM;
  • не делать встроенный офисный пакет;
  • не делать полноценный password manager;
  • не делать ИИ;
  • не делать мобильное приложение;
  • не делать сложные права пользователей;
  • не делать бухгалтерию;
  • не пытаться автоматически понимать всё.

6. Уникальность

Верстак отличается тем, что объединяет:

  • заметочник;
  • файловый кабинет;
  • project launcher;
  • журнал работ;
  • рабочий контекст;
  • sync/backup;
  • TUI/GUI;
  • миграцию из DokuWiki.

Но всё это не как отдельные модули, а вокруг одного понятия: дело.