Table Checkbox Renderer

approved

by Daniel Aguerrevere

Interactive checkboxes for Markdown tables. Toggle checkboxes in Reading Mode to instantly update the Markdown file. Supports multiple checkboxes per cell and any table layout.

8 stars4,447 downloadsUpdated 1mo agoMIT
View on GitHub

Table Checkbox Renderer plugin for Obsidian

Overview

Enables interactive checkboxes inside Markdown tables. When you click a checkbox in Reading Mode, the plugin updates the underlying Markdown source, keeping your table and file in sync. It supports multiple checkboxes per cell and works robustly for any table layout.

Demo

Demo

Features

  • Interactive checkboxes in Markdown tables (Reading Mode).
  • Supports multiple checkboxes per cell and per row.
  • Changes are immediately saved to the Markdown file.
  • Robust mapping between rendered checkboxes and source Markdown.
  • Works with any table structure, including complex layouts.

Usage

  • Install the plugin in Obsidian.
  • Create a Markdown table with checkboxes (e.g. [ ], [x]).
  • Click checkboxes in Reading Mode to toggle and save changes.
  • In Edit Mode, checkboxes are in text form and can be toggled directly in the editor.

How It Works

  • The plugin parses the rendered table and the original Markdown source.
  • For each table row, it matches checkboxes in each cell to the corresponding checkbox in the source line using a global index.
  • When a checkbox is toggled, the plugin updates the correct [ ] or [x] in the Markdown file.
  • In Edit Mode, a CodeMirror extension decorates checkboxes and allows toggling directly in the editor.

Development

  • Edit the TypeScript source files in the project directory.
  • Install npm npm install.
  • Run npm run build after making changes to produce the updated plugin files.
  • Load the plugin in Obsidian's community plugins folder for testing.

Contributing

Pull requests and suggestions are welcome!

License

MIT

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.