# DmNote: a customizable key viewer overlay for DJMAX RESPECT V and OBS

> DmNote is a key viewer built with Tauri and TypeScript that renders live keypress data as a desktop overlay or OBS browser source. It runs on Windows 10/11 and macOS, with Linux covered only by a community fork.

**DmNote-App/DmNote** — Make it yours. A customizable key viewer for DJMAX RESPECT V and any game.

- Repository: https://github.com/DmNote-App/DmNote
- Website: https://DmNote.app
- Stars: 2,187 · Forks: 71
- Language: TypeScript
- License: GPL-3.0
- Published: 2026-10-11 · Updated: 2026-10-11 · Language: en
- Canonical page: https://hysenlabs.com/projects/dmnote-app-dmnote

## A key viewer built for DJMAX RESPECT V that also accepts any other game

DmNote captures live keypress input and renders it as a floating display. Its primary target is DJMAX RESPECT V, a rhythm game in which finger placement and speed are central to play, but the project describes the tool as freely usable with any title. Grid cells respond individually to each physical key, and the overlay tracks KPS (keys per second) statistics and graphs alongside animated note effects, with optional audio feedback for each keypress.

Style depth separates it from a generic input display. Each key in the grid can carry its own assigned image, and custom CSS is accepted across the whole interface. Saved configurations, called presets, let a player swap between layouts without reconfiguring each key individually. Interface localization covers five languages. Plugins sit on top of the CSS extension path, adding a second layer for modifications CSS alone cannot handle.

Streamers and players who want their key input visible in recordings or live output are the primary audience. Running DmNote as an OBS browser source sends the rendering into OBS rather than over the game window, which the documentation notes is preferable when frame impact on the game matters.

## Tauri shells a React frontend and reads keypresses through Raw Input API on Windows

Two layers make up the project: a TypeScript frontend and a Rust backend. React 19 is the frontend, bundled with Vite 7 and styled with Tailwind CSS 3. Tauri wraps it in a native window, provides auto-update, and bridges the frontend to the operating system.

Key capture uses the Raw Input API on Windows and global input events on macOS. Raw Input reads keyboard state at a level below standard application input, which allows the overlay to track keys that a running game is already consuming. macOS uses a different mechanism because Raw Input is a Windows-specific API.

Audio feedback for keypresses, called key sounds in the interface, drives the ASIO code path in the Windows build. ASIO is Steinberg's low-latency audio interface for Windows. Steinberg's ASIO SDK is vendored at src-tauri/vendor/asio-sdk, so no separate download is required at build time. For projects that must track license obligations, the repository uses the GPLv3 option of that SDK's dual license, documented in THIRD_PARTY_NOTICES.txt at the repository root.

## ZIP for end users, a four-command clone for contributors, with an ASIO catch to note

Most users start with the ZIP download, extract it, and run the executable. On Windows 10 and Windows 11 this is the complete procedure. macOS requires a separate permissions step before the binary will launch; docs/mac_guide.md covers it, and the main README does not inline those steps.

Contributors building from source start with:

```bash
git clone https://github.com/DmNote-App/DmNote.git
cd DmNote
npm install
npm run tauri:dev
```

A detail the section heading buries: the default `npm run tauri:dev` script passes `-f asio-backend` to Tauri regardless of platform. LLVM is described as a Windows requirement in the README, but the ASIO feature flag activates on any platform. A contributor on macOS who runs `npm run tauri:dev` without reading that section will hit the LLVM dependency. On Windows, install LLVM with:

```bash
winget install LLVM.LLVM
```

or with `scoop install llvm`, then set the environment variable `LIBCLANG_PATH` to the LLVM bin folder. To build without ASIO on any platform, use `npm run tauri:dev:no-asio` instead. DmNote stores its configuration in `%appdata%/com.dmnote.desktop` on Windows.

## Fullscreen games override the always-on-top flag, requiring borderless windowed mode

Always-on-top is not an absolute guarantee. Certain titles in exclusive fullscreen ignore the flag at the OS level and draw over any overlay window, including DmNote's. Borderless windowed mode is the documented fix.

If the game does not offer a borderless mode, no alternative is given, and the overlay simply does not appear over that title in exclusive fullscreen.

OBS browser source mode sidesteps the problem for streamers: the overlay renders inside OBS rather than as a window competing with the game. Visibility fails only for players who want to see the key display on their own screen while they play, not for those who stream to an audience and see the overlay inside OBS.

## OBS browser source separates rendering from the game and supports a two-machine setup

OBS mode is what the documentation recommends when a player does not need to see the overlay on the gaming display. DmNote acts as a local source and OBS connects to it as a browser source, so rendering happens inside OBS rather than on top of the game window. Per the README, game frame impact is lower than in standard overlay mode.

A two-machine configuration is also documented: run DmNote on the gaming computer and connect OBS on a separate streaming or recording machine to DmNote's browser source over the local network. Rendering stays off the machine running the game.

Port documentation for the browser source is absent from the README, as are the URL format OBS should use and any IP filtering or access control details. dmnote.app/docs/ holds those specifics rather than the repository README.

## Custom CSS reshapes the interface, while plugins run without a documented sandbox

Two extension layers are available. Custom CSS changes both the program interface and the overlay appearance. Class names go into the interface without a dot prefix: the README gives the example that `blue` is correct and `.blue` is not. Whether more complex selectors behave the same way is not documented in the README. Official plugins and CSS examples are bundled in assets.zip, which ships with the download.

A warning in the README is direct: do not load untrusted plugins. For unofficial plugins, the documentation advises running the code through a tool like ChatGPT to check it before loading. That instruction acknowledges that plugins execute without a sandbox. No description of what a plugin can access or what API surface it exposes appears in the README. Risk for unofficial plugins is therefore unknown from the repository documentation alone.

## No Linux binary is provided, and macOS permission requirements are in a separate guide

Official builds target Windows 10, Windows 11, and macOS. No binary is provided for Linux. Linux users are directed to a community fork at https://github.com/northernorca/DmNote, with no description of that fork's feature set, maintenance state, or compatibility with the official configuration format. A Linux user has to assess that fork independently.

For macOS, the main README says additional permissions are needed and links to docs/mac_guide.md. That guide is inside the repository, but its contents are not reproduced in the README, so the specific permissions required are not visible without reading that file. Extracting the ZIP and launching the binary directly on macOS is not the complete install procedure.

At the time of the last recorded push, 2026-09-30, the repository was not archived.

## Conclusion

DmNote suits DJMAX RESPECT V players and streamers who want a configurable keypress display for OBS or a desktop overlay. Windows 10/11 is the fully supported platform, with ASIO key sounds available in the Windows build. macOS works but requires a permission procedure described in docs/mac_guide.md, not in the main README. Linux has no official binary and the community fork's feature parity is undocumented. For a streaming setup, OBS browser source mode carries less game frame overhead than the desktop overlay, per the README. Verify any third-party plugin before loading it, because the plugin system runs without a sandbox.

## FAQ

### What is DmNote used for?

DmNote is a key viewer that captures live keypress input and displays it as an overlay or OBS browser source. It was built for DJMAX RESPECT V players who want to show their key input during streaming or video recording, and it also works with other games.

### How do I use DmNote with OBS?

DmNote can run as an OBS browser source instead of a desktop overlay. The README recommends this mode when you do not need to see the overlay on your own display, noting it carries less game frame impact. The specific URL and port for the browser source are documented at dmnote.app/docs/ rather than in the README.

### Does DmNote run on Linux?

There is no official Linux binary. The README points Linux users to a community fork at https://github.com/northernorca/DmNote without describing its feature set or compatibility.

### How do I add custom CSS to DmNote?

Custom CSS is applied through the program interface and changes both the overlay and the application appearance. Class names are entered without a dot prefix: the README gives the example that `blue` is correct and `.blue` is not. Official CSS examples are bundled in assets.zip with the download.

### Why does building DmNote on Windows require LLVM?

The default npm run tauri:dev script enables the ASIO audio backend, which uses LLVM and Clang for bindgen to generate Rust bindings for the Steinberg ASIO SDK headers. To skip ASIO entirely, use npm run tauri:dev:no-asio instead, which does not need LLVM.

## Sources

- [DmNote-App/DmNote on GitHub](https://github.com/DmNote-App/DmNote)
- [License: GPL-3.0](https://github.com/DmNote-App/DmNote/blob/main/LICENSE)
- [Project website](https://DmNote.app)
- [README](https://github.com/DmNote-App/DmNote/blob/main/README.md)
- [Releases](https://github.com/DmNote-App/DmNote/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/dmnote-app-dmnote
