Почему я создал MarkFlow: Дневник разработчика

Я до сих пор помню тот вечер вторника. Было 11 часов вечера, и я только что закончил техническую документацию для нашего нового API.
Контент был прекрасен — написан на Markdown, с чистой структурой, идеальными блоками кода и валидными диаграммами Mermaid, объясняющими поток данных. Я чувствовал то удовлетворение, которое знает каждый разработчик, когда README.md отшлифован до совершенства.
Затем пришло уведомление в Slack от моего менеджера проекта:
«Эй, отличная работа над документацией. Можешь прислать это мне в виде документа Word? Юридическому отделу нужно просмотреть его с включенным режимом "Исправления", а они не используют Markdown.»
Я вздохнул. «Конечно, дай мне пять минут.»
Знаменитые последние слова.
Кошмар «пяти минут»
Я открыл терминал и запустил быструю команду Pandoc.
pandoc docs.md -o docs.docx
Я открыл результат в Word. Мое сердце упало.
- Таблицы были сломаны. Столбцы были сплющены, а заголовки смещены.
- Диаграммы исчезли. Мои красивые графики Mermaid превратились в голые блоки кода.
- Подсветка синтаксиса пропала. Код Python выглядел как простой текст, который трудно читать.
«Ладно», — подумал я. — «Попробую онлайн-конвертер».
Я погуглил «Markdown to Word converter» и нажал на первый результат. Он попросил меня загрузить мой файл. Я остановился. Этот документ содержал внутренние конечные точки API и проприетарную логику. Ни за что я не стал бы загружать это на какой-то случайный сервер без четкой политики конфиденциальности.
Итак, я сделал то, что сделал бы любой отчаявшийся разработчик. Я открыл Word на одном экране, VS Code на другом, и начал копировать и вставлять.
Я провел следующие два часа, вручную делая отступы в списках, делая скриншоты диаграмм, чтобы вставить их как картинки, и заново применяя жирный шрифт. К часу ночи я был измотан и разочарован. Я не писал код; я боролся с текстовым процессором.
Осознание
Той ночью я понял две вещи:
- Markdown отлично подходит для письма, но мир работает на Word. Мы не можем избежать этого.
- Существующие инструменты заставляют вас выбирать: либо тратить часы на настройку CLI-инструментов, таких как Pandoc, либо жертвовать своей конфиденциальностью ради облачных конвертеров.
Я не хотел ни того, ни другого. Я хотел инструмент, который уважал бы мою конфиденциальность (локальная обработка) и уважал мое форматирование (поддержка GFM).
Так я создал MarkFlow.
Создание для себя (и для вас)
Я начал создавать MarkFlow как небольшую утилиту для собственного использования. Цель была проста:
- Это должно быть локально. Я хочу конвертировать конфиденциальные контракты или обширную документацию, чтобы данные никогда не покидали мой браузер.
- Он должен справляться со «сложными» вещами. Таблицы, списки задач и, да, подсветка синтаксиса для блоков кода.
- Это должно быть быстро. Перетащил, отпустил, готово.
Когда я показал первую версию своей коллеге, ее глаза загорелись. «Подожди, он сохраняет форматирование таблицы? И мне не нужно устанавливать Python?»
Тогда я понял, что это не должно оставаться просто скриптом на моем ноутбуке.
Почему «Local-First» важен для меня
В 2026 году конфиденциальность данных — это не роскошь, а требование. Я создал MarkFlow с уникальной архитектурой, где движок конвертации работает прямо в вашем веб-браузере.
Когда вы используете MarkFlow, вы не отправляете мне свой файл. Вы по сути используете мощное приложение, которое случайно находится на веб-сайте. Это означает, что вы можете конвертировать свои NDA, черновики патентов и личные дневники без страха утечки данных.
От моего разочарования к вашей продуктивности
Сегодня MarkFlow вырос из того ночного разочарования в надежный инструмент, которому доверяют тысячи пользователей.
- Больше никаких сломанных таблиц.
- Больше никаких отсутствующих цветов кода.
- Больше никакой тревоги за конфиденциальность.
Я создал это, чтобы вам никогда не пришлось тратить вечер вторника на борьбу с форматированием Word. Сосредоточьтесь на контенте; позвольте MarkFlow заняться подачей.
Попробуйте его на своем последнем файле .md. Надеюсь, это сэкономит вам те два часа, которые я никогда не верну.
— Разработчик MarkFlow
Нашли этот инструмент полезным? Помогите нам рассказать о нем.