Skip to content

Repository files navigation

BusyMark

Markdown and Writerside editor for Linux.

busymark

Get it from the Snap Store

BusyMark split source and reading view

Features

  • Markdown editing — Source, Editor, Reading, and Split views with formatting tools, syntax highlighting, code folding, tables, images, links, code blocks, callouts, collapsible content, and document diagnostics.
  • Writerside projects — Open and create Writerside-compatible projects; edit Markdown and XML topics; manage instances, tables of contents, reusable TOC libraries, and project structure.
  • Project navigation and search — Files, Topics, and Outline views, tabbed documents, command palette, keyboard shortcuts, document search and replace, reviewed workspace-wide replacement, and Markdown TOC generation.
  • Technical documentation — Local rendering of Mermaid, PlantUML, D2, fenced OpenAPI specifications, and MathJax mathematical expressions.
  • PDF and HTML publishing — Export Markdown documents and Writerside instances to configurable PDF or portable offline HTML, with controls for layout, typography, tables of contents, heading numbering, and HTML styling.
  • Git integration — Review changes and diffs, stage and unstage files, commit, create and switch branches, fetch, pull, push, inspect file and project history, compare historical versions, and restore earlier file versions.
  • Clipboard and Local History — Reuse source, rich-text, and image fragments during the current session; compare and restore persistent on-device document revisions independently of Git.
  • AI-assisted editing — Optional Ollama, OpenAI, and Gemini integration with explicit edit scope and shared context, proposal review before changes are applied, and AI-assisted Git commit-message drafting.
  • Workspace reliability — Detect files changed outside BusyMark, recover unsaved documents, restore previous workspace sessions, manage remote-image permissions, and protect Git operations behind workspace trust.

Installation

Install BusyMark from the Snap Store:

sudo snap install busymark --beta

The Snap uses strict confinement. See Snap confinement for filesystem and Git-integration details.

Run from source

BusyMark currently uses Flutter 3.47.4. Install the Linux packages required by Flutter and BusyMark's CMake configuration:

sudo apt-get install -y \
  clang \
  cmake \
  curl \
  fonts-noto-core \
  fonts-noto-mono \
  libgtk-3-dev \
  libhandy-1-dev \
  libsecret-1-dev \
  libwebkit2gtk-4.1-dev \
  ninja-build \
  pkg-config \
  xz-utils

Node.js 22 or newer with npm is also required to build the bundled web components.

Prepare and run the application:

flutter doctor
flutter pub get
flutter run -d linux

Pass a Markdown file or documentation directory after -- to open it at startup:

flutter run -d linux -- /absolute/path/to/document.md
flutter run -d linux -- /absolute/path/to/documentation

Build and run the standard checks with:

flutter build linux
flutter analyze
flutter test

The build assembles BusyMark's runtime components. Packaged users do not need separate Typst, Java, Node.js, or Chromium installations.

The CI workflow installs additional packages for headless X11/Wayland, browser, PDF, and sandbox verification. Those packages are not required for an ordinary local build; see the Linux workflow when reproducing release verification.

Screenshots

BusyMark split source and reading view
Split view with Markdown source and rendered document.
BusyMark editor view
Editor view with formatting tools and document navigation.
BusyMark reading view
Reading view for rendered documentation.
BusyMark keyboard shortcuts dialog
Keyboard shortcuts reference.
Mermaid and PlantUML diagrams rendered in BusyMark
Mermaid and PlantUML diagrams rendered directly in the document.
D2 diagram rendered in BusyMark
D2 diagram rendering.
OpenAPI documentation rendered in BusyMark
OpenAPI documentation rendering.
Writerside table of contents in BusyMark
Writerside project and table-of-contents editing.

Documentation

The documentation index lists user guides and the separate developer notes.

Markdown and Writerside

BusyMark opens Markdown files using .md and .markdown extensions and can work with ordinary documentation folders.

Writerside-compatible projects are recognized through writerside.cfg and the older project.ihp format. BusyMark supports Markdown and XML topics, Writerside instances, tables of contents, reusable content, project configuration, and other commonly used Writerside documentation features.

More information:

Search and replace

BusyMark supports active-document replacement and reviewed workspace-wide replacement. See Search and replace for search options, scope, preview behavior, and stale-result handling.

Diagrams and mathematics

BusyMark renders Mermaid, PlantUML, D2, and fenced OpenAPI content locally. Mathematical expressions are rendered with the bundled MathJax environment.

See:

Export

BusyMark can export the current Markdown document or a Writerside instance to PDF and portable offline HTML.

PDF export supports configurable paper size, orientation, margins, typography, headers and footers, page numbering, table of contents, and heading numbering.

See:

AI editing

AI-assisted editing is optional and disabled by default.

BusyMark supports Ollama, OpenAI, and Google Gemini. Proposed edits are presented for review before changes are applied.

See AI editing for configuration, privacy, provider behavior, and security information.

History and recovery

See Clipboard History and Local History for collection scope, limits, retention, restoration, exclusions, and how these tools differ from undo, crash recovery, and Git. Implementation and verification details are in the history implementation notes.

Contributing

Issues and focused pull requests are welcome.

Changes should remain consistent with BusyMark's current scope as a desktop Markdown and Writerside documentation editor.

License

BusyMark is licensed under the Apache License 2.0. See LICENSE.

Licenses and notices for bundled third-party components are distributed with the application.

About

Markdown and Writerside Editor for Linux with Git, PlantUML, Mermaid, D2, OpenAPI, MathJax, AI editing, and export to PDF

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Contributors

Languages