От идеи до продукта

Хронология создания Markdown Table Editor

Выверенный порядок работ: от первого сценария с выравниванием таблицы по Tab до двух опубликованных плагинов, сайта, SEO, Marketplace approval, Plugin List flow и финальных установочных проверок.

Коротко

Что получилось в конце процесса

Markdown Table Editor был доведен не только до кода, но и до продуктового комплекта: две платформы, общий контракт поведения, релизные проверки, публичный сайт и каналы установки.

2 плагина JetBrains IDE и Notepad++ с общей пользовательской моделью.
Паритет core Java и C++ поведение закреплено тестами и golden fixtures.
Публикация GitHub Releases, JetBrains Marketplace и Notepad++ Plugin List flow.
Сайт и SEO Отдельная продуктовая страница, changelog, RU/EN материалы и индексация.
Хронология

Пройденные шаги

Список показывает последовательность работ от первого сценария с выравниванием таблиц до опубликованного и проверенного продукта.

  1. Было найдено ядро идеи: удобное редактирование Markdown-таблиц прямо в редакторе.
  2. Было сформулировано главное неудобство: ручное выравнивание pipe-таблиц долгое и хрупкое.
  3. Был выбран первый продуктовый сценарий: курсор в таблице, Tab, таблица выровнена.
  4. Было определено начальное позиционирование: не отдельный Markdown-редактор, а расширение привычной IDE.
  5. Было проведено сравнение с альтернативами: Markdown Foundry, форматтеры, встроенные средства редакторов.
  6. Был определен MVP: выравнивание таблицы, команда меню, корректный Tab.
  7. Был сделан первый JetBrains-плагин.
  8. Был реализован Java core для разбора и форматирования Markdown pipe tables.
  9. Было подключено действие к IntelliJ Platform.
  10. Было добавлено выравнивание таблицы вокруг курсора.
  11. Было реализовано контекстное поведение Tab: в таблице выравнивание, вне таблицы обычный отступ.
  12. Был расширен UX команд: меню Tools, context menu, search actions.
  13. Было добавлено перемещение по ячейкам.
  14. Было добавлено редактирование строк: вставка, удаление, перемещение.
  15. Было добавлено редактирование колонок: вставка, удаление, перемещение.
  16. Было добавлено создание новой таблицы заданного размера.
  17. Было добавлено сортирование строк по текущей колонке.
  18. Было добавлено преобразование CSV/TSV в Markdown-таблицу.
  19. Было улучшено преобразование CSV/TSV без выделения, по текущему блоку.
  20. Было исправлено поведение на реальных edge cases: escaped pipes, alignment markers, malformed tables, caret placement.
  21. Был сделан второй продукт: Notepad++-плагин.
  22. Был реализован C++ core для Notepad++.
  23. Было введено правило паритета: Java core и C++ core должны вести себя одинаково.
  24. Было создано общее golden-fixture покрытие как контракт поведения.
  25. Было добавлено Java-тестирование core и сценариев.
  26. Было добавлено C++ smoke/scenario тестирование.
  27. Было поднято покрытие core до релизного уровня около 90%+.
  28. Было улучшено Unicode-поведение: UTF-8, CJK width, emoji, combining marks, zero-width sequences.
  29. Были проведены performance benchmarks для ключевых операций: выравнивание больших таблиц, CSV/TSV conversion, сортировка, Unicode/CJK width и сохранение caret placement.
  30. Было настроено JetBrains-пакетирование через Gradle.
  31. Было настроено Notepad++-пакетирование через MSBuild.
  32. Было добавлено пакетирование Notepad++ под x86, x64 и ARM64.
  33. Был подготовлен Plugin Admin ZIP для Notepad++.
  34. Было синхронизировано версионирование между version-файлами двух продуктов и Plugin List JSON.
  35. Был настроен CI для сборки, тестов, coverage и релизных проверок.
  36. Была спроектирована единая hotkey-система: Tab плюс Ctrl+Alt+Shift+....
  37. Было проверено keyboard-only ядро сценариев через Tab, hotkeys, меню и action search.
  38. Было проверено сохранение hotkeys в JetBrains Keymap.
  39. Было проверено сохранение hotkeys в Notepad++ Shortcut Mapper.
  40. Было добавлено UI automation покрытие: IDEA .ijperf playback и PowerShell smoke для Notepad++.
  41. Было проведено ручное UI/e2e тестирование в реальных окнах JetBrains IDE и Notepad++.
  42. Была подготовлена документация RU/EN для JetBrains-плагина.
  43. Была подготовлена документация RU/EN для Notepad++-плагина.
  44. Было добавлено compliance-оформление: license, notices, third-party notices, privacy metadata.
  45. Был создан бренд: название, логотип, plugin icon, SVG/PNG assets.
  46. Было сделано визуальное оформление README и marketplace assets.
  47. Было создано реальное GIF-демо для JetBrains.
  48. Было создано реальное GIF-демо для Notepad++.
  49. Был создан сайт markdowntableeditor.krot.name.
  50. Был сделан дизайн сайта: hero, реальные изображения продукта, сценарии, download-блоки, changelog.
  51. Была добавлена адаптивная верстка сайта.
  52. Был сделан internationalization-процесс для публичных материалов: README, сайт, language switch, hreflang и подготовка локализованных текстов.
  53. Была сделана интернационализация на top-20 языков:
    • Английский
    • Китайский упрощенный
    • Испанский
    • Хинди
    • Арабский
    • Португальский
    • Бенгальский
    • Русский
    • Японский
    • Немецкий
    • Французский
    • Корейский
    • Турецкий
    • Итальянский
    • Польский
    • Украинский
    • Вьетнамский
    • Индонезийский
    • Тайский
    • Нидерландский
  54. Было сделано SEO сайта: title, description, keywords, canonical, OpenGraph, Twitter Card, JSON-LD, sitemap, robots.txt.
  55. Был настроен post-release monitoring: LiveInternet, проверка доступности сайта, контроль страниц загрузки, GitHub Releases, Marketplace, Plugin List и входящих issues.
  56. Были подготовлены тексты для GitHub Releases, JetBrains Marketplace и Notepad++ Plugin List.
  57. Были созданы GitHub Releases для обоих продуктов.
  58. Была проверена структура опубликованных ZIP и SHA-256 release assets.
  59. Был подготовлен JetBrains Marketplace submission.
  60. Был пройден JetBrains Plugin Verifier.
  61. Была загружена версия в JetBrains Marketplace.
  62. Был получен marketplace approve/listed update для опубликованной версии.
  63. Был подготовлен Notepad++ Plugin List PR с JSON для x86, x64 и ARM64.
  64. Был пройден Plugin List validation.
  65. Был проверен Plugin Admin flow для Notepad++.
  66. Была проведена чистая установка JetBrains-плагина через Install Plugin from Disk....
  67. Была проведена чистая установка Notepad++-плагина из packaged ZIP.
  68. Было повторно проверено поведение после установки: Tab, меню, CSV/TSV, сортировка, hotkeys.
  69. Был обновлен сайт и changelog после релиза.
  70. Было выполнено launch-продвижение: сайт, SEO, GitHub Releases, Marketplace, Plugin List, README, демо, changelog и download links.
  71. Была установлена свежая версия на пользовательский ноутбук.
  72. Было повторено smoke-тестирование на установленной свежей версии.
  73. Был зафиксирован релизный процесс и правила поддержки в проектной документации.
  74. Итог: был получен опубликованный продуктовый комплект из двух плагинов, паритетного ядра, тестов, CI, hotkeys, UI-проверок, дизайна, SEO, документации, marketplace/list publication flow и воспроизводимого релизного процесса.