Skip to content

Releases: karad/kendai-md

v0.2.0

Choose a tag to compare

@karad karad released this 17 Oct 13:54

kendai-md v0.2.0

This release adds a full-screen terminal Markdown reader alongside the browser reader. Browse files in the left pane and read rendered Markdown in the right pane with keyboard navigation, document search, and navigation history.

Highlights

  • Start the terminal reader with kendai --tui or its short form, kendai -T. Running kendai without this option continues to open the browser reader.
  • Select files with the arrow keys or PageUp / PageDown, then press Enter to open the preview. Escape returns focus to the file list while preserving the preview and reading position.
  • Read headings, emphasis, lists, quotes, inline code, and syntax-highlighted code blocks using terminal styles and Unicode-aware wrapping.
  • Read bordered tables with aligned columns and wrapped cells. Scroll wide tables horizontally with Left / Right.
  • Select headings, links, and images with Tab / Shift+Tab. Press Enter to jump to a heading, follow a relative document link, or request the default application for a local image.
  • Search within the current document with / and move between matches with g / G, wrapping at either end. Open the heading list with o.
  • Navigate back and forward with < / >. Document positions and navigation history are retained during the current session.
  • See local file edits, additions, and deletions reflected automatically. Use --no-watch to disable updates.
  • Exit with q or Ctrl+C and restore the terminal. While entering a search, q is treated as text; Ctrl+C still exits. In a window below the minimum size, q also exits from the size notice.

Local by design

The terminal reader shares the browser reader's target discovery and file access boundaries. Paths are resolved from the caller's working directory, and relative document links can only navigate to documents included in the selected targets.

Images are represented by their descriptions and paths rather than rendered inside the terminal. Opening a selected local image uses the operating system's default application after validating the path. Remote images and external document URLs are not opened by the terminal reader.

Upgrade

The minimum supported Node.js version has increased from 22 to 24.22.0 for both readers. Upgrade Node.js before installing this release.

npm install -g kendai-md@0.2.0
kendai --version
kendai --tui

Or run without a global installation:

npm exec --yes --package=kendai-md@0.2.0 -- kendai --tui

Open specific documents or disable automatic updates:

kendai -T -t README.md -t doc/
kendai -T --no-watch

The terminal reader requires interactive stdin and stdout. A window of at least 80 columns by 24 rows is recommended; smaller windows display a size notice. Browser-only options --port and --no-open cannot be combined with --tui.

Reliability and verification

  • Added regression coverage for restoring same-document history positions after searching, backward search wrapping after manual scrolling, Unicode heading fragments, and quitting from the small-window notice while search input is active.
  • All 164 regular unit and integration tests pass. The six PTY lifecycle tests, skipped in the regular non-interactive run, also pass when run separately on macOS.
  • TypeScript checks and compilation pass, and the CLI reports version 0.2.0.
  • Real terminal lifecycle and default image application behavior on Linux and Windows remain unverified. Terminal appearance depends on terminal and font support.

Terminal reader guide · Documentation · npm package · Report an issue

v0.1.1

Choose a tag to compare

@karad karad released this 14 Oct 23:59

kendai-md v0.1.1

This release refreshes the reader with a monochrome interface, muted syntax highlighting, and a workspace directory name in the sidebar header.

Highlights

  • Read on a white background with black and gray interface elements in the light theme.
  • Use a neutral black, white, and gray palette in the dark theme.
  • Navigate with monochrome accents across the file list, table of contents, links, focus indicators, and connection status.
  • Read code with muted purple, green, and brown syntax highlighting, adapted to each theme.
  • See a matching black-and-white favicon and a white browser theme color.
  • Identify your workspace by its directory name in the top-left header, replacing the logo mark and wordmark and removing the LOCAL badge.
  • Keep long directory names on one line with an ellipsis; hover over the name to see it in full.

Upgrade

Requires Node.js 22 or later.

npm install -g kendai-md@0.1.1
kendai --version

Or run without a global installation:

npm exec --yes --package=kendai-md@0.1.1 -- kendai

Verification

  • All 74 unit and integration tests pass, along with formatting, TypeScript checks, and compilation.
  • Packaged CLI checks pass for global installation in a temporary prefix, execution through npm exec, and compilation from a clean local Git repository.
  • Package checks cover caller-relative targets, bundled browser assets, document rendering, and clean server shutdown.

Documentation · npm package · Report an issue

v0.1.0

Choose a tag to compare

@karad karad released this 08 Oct 23:09

kendai-md v0.1.0

The first release of kendai-md, a local Markdown reader for your project's documentation. Open files and directories in your browser, find what you need, and get back to work.

Highlights

  • Combine multiple directories and individual Markdown files in one workspace with repeatable --target options.
  • Read rendered Markdown with syntax highlighting, tables, task lists, and a table of contents.
  • Follow relative document links and jump to headings.
  • See updates as files are edited, added, or deleted.
  • Disable file watching and automatic updates with --no-watch for reading without background polling.
  • Search by filename or path using /, ⌘K, or Ctrl+K.
  • Switch between light and dark themes.

Local by design

The server listens on 127.0.0.1, and Markdown rendering and sanitization happen locally. No CDN, analytics, external AI, or hosted rendering service is used. Remote images are replaced with alt text; external links open when clicked.

Local images are checked against the selected file boundaries. Hidden, dependency, and generated directories are excluded from automatic discovery, while explicit targets can include them. Your original files are never modified.

Getting started

Requires Node.js 22 or later.

npm install -g kendai-md
kendai

Or run without a global installation:

npx kendai-md

Open specific documents:

kendai -t doc/ -t README.md

The browser opens automatically. Press Ctrl+C in the terminal to stop the server. Use --no-open to open the browser yourself, or --port to choose a port.

Scope

kendai-md is a document reader. HTML/PDF export and static-site generation are not included. Relative document links navigate to files included in the selected targets.

Available under the MIT License.

Documentation · npm package · Report an issue