Skip to content

Latest commit

 

History

52 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DopusWorX

A document viewer and in-place editor that lives inside Directory Opus.

Markdown, maths, diagrams, code, CSV, HTML and binary files, rendered and editable right in the Opus viewer pane.

DopusWorX in action

Windows x64  ·  needs the Microsoft Edge WebView2 runtime  ·  proprietary, © 2026 HyperWorX


Get the plugin from the Releases Page

If DopusWorX is useful to you and you'd like to support the work:

Buy Me a Coffee

Also from HyperWorX

HyperWhisper

Transcribe and translate audio and video, all on your own machine.

What it is

A native Directory Opus viewer plugin: a Windows DLL that renders documents in the Opus viewer pane, the pop-out viewer window, and QuickShow popups. It is not a separate app; it loads inside Opus and uses the Microsoft Edge WebView2 runtime to draw itself.

Under the hood it is two layers, not just a web page in a window. The plugin itself is a native C++ viewer DLL built against the Directory Opus plugin SDK, which is why it works in the viewer pane, the pop-out viewer and QuickShow rather than as a standalone window. WebView2 is only the surface it draws on: inside it, CodeMirror and its Lezer grammars drive the source and editing views across around 150 languages, markdown-it parses the Markdown, KaTeX and Temml draw the maths, and Mermaid draws the diagrams. The hex inspector, the CSV grid, the spell check and the theming are all written for this.

It is file-type aware: open a file and DopusWorX picks the right view for it.

  • Markdown gets Reading, Live and Source, with a split preview, and renders maths (LaTeX / AsciiMath) and Mermaid diagrams inline.
  • Source-code files open in Source view with syntax highlighting (around 150 languages).
  • CSV / TSV open as an editable grid.
  • HTML renders as its own page, with a Source view and a split.
  • Binary files open in a hex inspector (offset / hex / ASCII with a data inspector), with an opt-in byte editor.

Reading, Live and Source

For a Markdown document there are three ways to look at it:

  • Reading is the finished, fully rendered page.
  • Live renders the page too, but the moment your cursor lands on a line the formatting marks for that line come back, so you can edit without dropping out of the rendered view.
  • Source is the raw text, with a split view one more click away (below).

You pick which of these a Markdown file opens in under Settings (Open markdown in: Reading, Live or Source). DopusWorX also remembers the view you last used for each file, and you can keep that always, turn it off, or have it expire after anything from five minutes to a year.

Reading: the finished, rendered page Live: rendered as you type, with the formatting toolbar
Reading Live

The split view. Click Source a second time and the pane splits down the middle: the raw Markdown on the left, the live preview on the right, with a divider you can drag to resize the two panes and a button to link or unlink their scrolling.

The split view: raw Markdown source on the left, the live preview on the right, with a draggable divider between them

A full formatting toolbar sits underneath, from bold and headings through lists, quotes, code and tables, with find and replace (case, whole word, regex), undo and redo with a history dropdown, and a live word, character and line count. The full tour is in docs/03-editing.md.

Insert a Table of Contents that keeps itself up to date as you edit (list style and title style are configurable in Settings), and fold whole heading sections away: in Source the fold marker sits on the line beside the code, and in Live a chevron appears next to a heading when you hover it.

Spell check underlines misspellings as you type in Live and Source, skipping code, links and URLs; English (US) is built in and more than fifty other dictionaries download once and are cached offline. Add your own words and their plurals and possessives are covered too, and they come back as suggestions, accents intact.

A right-click menu is there throughout, fully drivable by keyboard or touch, and F1 pops a guide to every shortcut. Any file can be printed or saved as a PDF in the palette you are reading it in, or in plain black and white. See docs/06-context-menus.md for the full set.

The viewer keeps a back/forward history of the files it has shown - step through it with the mouse back and forward buttons or Ctrl+Alt+Left/Right, browser-style.

Maths

Write it in LaTeX or AsciiMath, inline or as a block, and mix the two freely: auto-render works out which style each equation uses. A symbol panel (Σ) drops symbols in to match your syntax, clicking a rendered equation brings its source back for editing, a convert button rewrites LaTeX to AsciiMath and back in place, and your own macros work everywhere. Eight maths fonts, slanted fractions, and a choice of KaTeX or Temml as the engine.

Prices are safe: $5 stays as text. The maths engine only loads on notes that actually contain equations, so plain notes stay quick. See docs/04-maths.md for the full guide.

The maths symbol panel beside a rendered equation

Diagrams

Turn a fenced ```mermaid block into a flowchart, sequence, class, state, ER, pie, Gantt or any other Mermaid diagram type, drawn from plain text. Diagrams render in Reading and Live (click one in Live to edit its source in place), a broken diagram shows a ⚠ box with the reason rather than taking the note down, and the ~3 MB engine loads only on a note that actually contains a diagram. Styling runs from a hand-drawn look to fonts, wrapping and edge shapes.

With Match page the same diagram takes its colours from the active palette, so it suits a dark page or a light one:

A World Cup titles pie chart drawn on a dark palette The same pie chart drawn on a light palette
Dark palette Light palette

See docs/08-mermaid.md for the full guide, with a live example of every diagram type.

Code and source files

Source-code files open in Source view: syntax highlighting for around 150 languages, a line-number gutter, indentation guides on the file's own indent columns, word wrap, an optional active-line highlight with a magnify option, and a code theme independent of the page palette. Colour values get a swatch and a picker, and diff files colour their added and removed lines.

Code files are fully editable, with a code toolbar for comments (in the file's own comment style), duplicating and moving lines, and indentation. Line numbers click and drag to select whole lines, and Ctrl-click builds a multi-cursor. Fenced code blocks inside a Markdown document are highlighted in every mode.

Source view with syntax highlighting, line-number gutter and the code toolbar

Binary files

A file that is binary rather than text opens in a hex inspector: an offset / hex / ASCII view with a side panel that reads the bytes under the cursor as integers and floats. You can select byte ranges, jump to an offset, search for hex or text, and copy as hex or text. An opt-in setting turns on byte editing, and any file can be forced open with View as hex from the right-click menu. See docs/09-binary-inspector.md.

The binary inspector: a data inspector panel reading the bytes under the cursor, beside the offset, hex and ASCII dump

CSV and tables

CSV and TSV open as an editable grid: click a header to sort, double-click a cell to edit, add or delete rows and columns with undo and redo, select and paste blocks of cells, filter, freeze the first column, override the delimiter, and copy the whole thing out as a Markdown table. Column widths, delimiter and zoom are remembered per file, and an untouched file saves back byte-for-byte identical.

A CSV open as an editable grid: World Cup results by team across the years

HTML

HTML files have a rendered View, a Source view of the raw markup, and a split that shows both at once.

HTML rendered view HTML View / Source split
Rendered view View / Source split

Themes and palettes

Thirty-four built-in palettes, dark and light, from Dracula and Nord to Catppuccin, Everforest and Rosé Pine, alongside the signature ProWorX, GloWorX and NibWorX. By default a palette follows the Opus pane background automatically; you can pin one instead. Two of them go further than colour: GitHub Web Light and GitHub Web Dark lay the page out the way github.com lays out a README, so you can see what you are about to push.

The same document shown across several built-in palettes

Nothing is locked down. The visual editor lets you change any colour and save it as your own named theme. Bold, italic, strikethrough and inline code each get their own colour, headings can be coloured per level, and the page surface, rules, borders and shadows are all yours to tune. See docs/07-palettes.md for the full list, with a card for each.

Markdown extras and Obsidian syntax

Full GitHub-flavoured Markdown: tables, task lists (tick the boxes in Reading or Live), footnotes editable in place, definition lists, abbreviations, mark/highlight, and sub/superscript.

Obsidian-style linking and embeds work too:

  • [[note]] wiki-links, including [[note#heading]] and [[note|alias]].
  • ![[note]] transclusion and ![[image.png]] image embeds.
  • The Obsidian image alt syntax for size and alignment: ![alt|400](path) and ![alt|400x300|center](path). Relative paths and Windows absolute paths resolve. This works inside table cells too, with the plain pipe and no escaping, e.g. | ![logo|72|center](path) |.

Frontmatter and the banner image

Add a banner: line to the YAML frontmatter at the top of any note and DopusWorX renders that image as a full-width strip across the top of the document. In Reading mode the frontmatter block is hidden entirely; in Live mode it shows as the banner image from the moment the file opens - click it and the raw YAML comes back for editing, move away and the banner renders again.

A note open in Live mode with a landscape banner image rendered across the top of the document, replacing the frontmatter block

Right-click any markdown document and choose Set banner image to search for a picture without leaving the app, drag the preview to set the crop, and DopusWorX writes the frontmatter for you.

Customise it to your liking

The Settings dialog has five tabs, Appearance, General, Markdown, File types and About, with live preview and a plain-language note on each option. Every tab carries a ribbon of its sections down the left: click a name and that section opens in the box beside it, one at a time, or press Expand to place the lot and scroll through them. A Find a setting box in the header searches every tab at once, so a setting can be reached by name instead of hunted for.

The Settings dialog on the Appearance tab, with the coloured section ribbon down the left and the theming controls beside it

Among the things you can change:

  • Auto-hiding toolbars. Set the top toolbar or the formatting toolbar to slide away and reappear when you reach for them, so the document gets the whole pane.
  • Toolbar layout. Drag the formatting buttons into the order you want, or hide the ones you never use.
  • File types. Decide which extensions DopusWorX handles and how far each one goes: preview in the pane, open on double-click inside Opus, or associate with Windows itself. A grammar column picks each type's colouring or its whole view, so .tpl can open as C++ and .log as a Markdown document. The full story is in docs/02-file-types.md.
  • Maths macros, fonts and engine, encoding and fallback codepage, image search folders, auto-save, page padding on all four sides and the margins outside the page, gutters, formatting marks, and the full type and colour controls behind the palettes.

Zoom any view from 50% to 300% with Ctrl and the scroll wheel or a trackpad pinch (or the right-click Zoom submenu); each view keeps its own level and the toolbars stay put.

Careful with your files

A viewer that edits your files has to be careful with them, and a lot of the work here went into exactly that.

  • Your edits survive. Writes are atomic (a temp file, flushed, then a single atomic replace), so a file is never left half-written. An empty buffer will not overwrite a file that has content. If Opus closes or crashes with unsaved work, a recovery copy is kept under AppData and offered back when you reopen.
  • The last saved versions are kept. Every save banks the version it overwrites, and the last five per file (settable up to twenty) can be brought back from the right-click menu under Saved versions - restored as an unsaved edit, so nothing touches the file until you say so, or opened in their own window for a look first.
  • No silent overwrites. If a file changes on disk while you are editing, DopusWorX notices, and tells the difference between a real change and a harmless touch by comparing the content, not just the timestamp. You get a clear choice: keep your edits, save a copy, or reload.
  • Remote images stay private. Off by default, an image referenced by an http(s) URL renders as a placeholder and makes no network request at all, so a remote server cannot learn you opened a document that points at it.
  • A hardened updater. The in-app updater talks HTTPS only, checks every redirect against an anchored allowlist of the real release hosts (so a look-alike domain gets nowhere), and refuses to install anything whose SHA256 does not match the published hash.
  • Tidy on your system. The viewer DLL writes a single HKCU registry value (LastPaneBg under HKCU\Software\HyperWorX\DopusWorX) to remember the Directory Opus pane background colour across restarts; beyond that it writes nothing to the registry. Its settings, themes and cache all live under your profile.

Staying up to date

DopusWorX checks for new releases from inside Settings and can fetch and install an update for you, gated by the security checks above. Releases are published on the Releases page.

Documentation

For more detail than this page covers:

  • Getting started - the basics, end to end.
  • File types and views - what each kind of file does, and how DopusWorX is file-type aware.
  • Editing - the modes, the formatting toolbar, find and replace, and saving.
  • Maths - LaTeX, AsciiMath, the symbol panel, fonts and macros.
  • Diagrams - Mermaid flowcharts, sequence, class, state and more, plus the diagram settings.
  • CSV grids - sorting, in-cell editing, filtering, freezing, delimiters and more.
  • Context menus - the right-click menus, driven by keyboard or touch as well as mouse, and the Save menu.
  • Palettes - every built-in palette and the Appearance settings.
  • Binary inspector - the hex view, the data inspector and the opt-in byte editor.

Installation

Download DopusWorX_v<version>_Setup.exe from the Releases page and run it. One UAC prompt and it does the rest: closes Directory Opus, installs the plugin into the Opus Viewers folder, and starts Opus again. It registers in Apps & features, so removing it later is the normal Windows uninstall. Windows may show a SmartScreen prompt the first time, as it does for any new unsigned download - More info, then Run anyway.

Prefer a zip? DopusWorX_v<version>.zip on the same page holds the identical plugin with plain Install.cmd and Uninstall.cmd scripts you can read before you run them. Extract it anywhere, run Install.cmd, accept the UAC prompt.

For an unattended or scripted install, the setup exe takes /VERYSILENT, and the zip scripts take /silent (or /quiet).

Requirements: Windows x64, Directory Opus 13 or later, and the Microsoft Edge WebView2 runtime. WebView2 is already on most up-to-date Windows installs; if it is missing, DopusWorX shows a download link in the pane.

Opening Markdown on double-click

Out of the box Opus opens a .md file with whatever Windows has associated. To open it in the DopusWorX viewer instead, point the Markdown file type's Left double-click event at the Show command under Settings ▸ File types (covering md markdown mdown mdwn mkd mkdn). The File types panel in the DopusWorX settings can set this up for you.

Where your data lives

  • Settings: %APPDATA%\HyperWorX\DopusWorX\settings.json
  • Custom themes: %APPDATA%\HyperWorX\DopusWorX\themes\<name>.json
  • WebView2 cache: %LOCALAPPDATA%\HyperWorX\DopusWorX\

Try it

The samples/showcase/ folder has a handful of demo documents, numbered in the order they are worth opening: headings and a table of contents, typography and lists, banner images, frontmatter, and the Source split view. Open one in the pane and there is something to look at straight away.

Support

If you find this useful, you can buy me a coffee.

Buy Me a Coffee

Licence

Proprietary. Copyright © 2026 HyperWorX. All rights reserved. See LICENSE.

Directory Opus is a trademark of GP Software. DopusWorX is an independent plugin, not affiliated with or endorsed by GP Software.


Also from HyperWorX

HyperWhisper

Transcribe and translate audio and video, then edit it, all on your own machine.

Drop in an interview, a lecture, a podcast or a video. HyperWhisper transcribes it, tells you who is speaking, timestamps every line, and translates it if you need another language. Then it hands you an editor with a player wired to the transcript: playback follows the text, and clicking a line jumps straight to it.

Nothing is uploaded, there is no account and no per-minute billing, and it runs with the network off.

Get HyperWhisper

About

Document viewer and in-place editor plugin for Directory Opus. Markdown with Reading, Live and Source split preview, Mermaid diagrams, LaTeX/AsciiMath maths, syntax-highlighted code, an editable CSV grid, rendered HTML, and a binary/hex inspector. 30 palettes, atomic saves and private-by-default images. WebView2 + CodeMirror 6 + KaTeX/Temml.

Topics

Resources

Security policy

Stars

40 stars

Watchers

2 watching

Forks

Releases

Sponsor this project

Packages

Contributors