Menu

Tree [13d39e] master /
 History

HTTPS access


File Date Author Commit
 .github 2024-12-18 tlr tlr [30c5aa] update github action
 .vscode 2024-12-17 tlr tlr [107d4c] 0.1.0
 docs 2025-01-03 tlr tlr [d27ae7] site logo
 public 2024-12-27 tlr tlr [f96d2a] script editor floating window, snap to grid, mi...
 site 2025-01-03 tlr tlr [d27ae7] site logo
 src 2025-01-02 tlr tlr [0da646] fix bad port anchors after minimize restore
 src-assets 2024-12-27 tlr tlr [f96d2a] script editor floating window, snap to grid, mi...
 src-tauri 2025-01-02 tlr tlr [b7cac4] version
 .gitignore 2024-12-17 tlr tlr [107d4c] 0.1.0
 LICENSE 2024-12-17 TiagoLr TiagoLr [a25863] Update LICENSE
 README.md 2025-01-03 TiagoLr TiagoLr [13d39e] Update README.md
 eslint.config.js 2024-12-17 tlr tlr [107d4c] 0.1.0
 index.html 2024-12-17 tlr tlr [107d4c] 0.1.0
 package-lock.json 2024-12-30 tlr tlr [013e5d] Trigger sliders WIP
 package.json 2024-12-30 tlr tlr [013e5d] Trigger sliders WIP
 vite.config.js 2024-12-17 tlr tlr [107d4c] 0.1.0

Read Me


Mididash

[![Windows Support](https://img.shields.io/badge/Windows-0078D6?style=for-the-badge&logo=windows&logoColor=white)](https://github.com/tiagolr/mididash/releases) [![Ubuntu Support](https://img.shields.io/badge/Linux-E95420?style=for-the-badge&logo=linux&logoColor=white)](https://github.com/tiagolr/mididash/releases) [![Mac Support](https://img.shields.io/badge/MACOS-adb8c5?style=for-the-badge&logo=macos&logoColor=white)](https://github.com/tiagolr/mididash/releases)
[![GitHub package.json version](https://img.shields.io/github/v/release/tiagolr/mididash?color=%40&label=latest)](https://github.com/tiagolr/mididash/releases/latest) ![GitHub issues](https://img.shields.io/github/issues-raw/tiagolr/mididash) ![GitHub all releases](https://img.shields.io/github/downloads/tiagolr/mididash/total) ![Github license](https://img.shields.io/github/license/tiagolr/mididash)

Mididash is an open source MIDI routing software with a node-based interface and Lua scripting. A modern take on programs like MIDI-OX.

![Screenshot](./src-assets/ss-dark.png)

Features

  • Cross-platform available on Windows, Linux and macOS
  • Node-based MIDI routing allows for versatile configurations
  • Hot-plugging reconnect or replace MIDI devices
  • MIDI monitoring for inputs, outputs or individual nodes
  • Pre-configured nodes for MIDI splitting, mapping and more
  • Script nodes using Lua 5.4
  • Lightweight installer under 10MB
  • High performance built with Tauri and Rust

Download

The latest version and others can be found on Github releases

How does it compare with MIDI-OX?

MIDI-OX is the main reference for this program, this one offers more routing capabilities and practical scripting via Lua nodes, it does not contain the same amount of MIDI tools like bank selectors or NPRN calculators but those can be added over time.

In terms of performance, it's about the same CPU usage (e.g. 5% CPU on high midi throughput), the bundle size is small but cannot compete with 1MB of MIDI-OX, the memory footprint of the program is also similar but the webview can consume a few dozen MBs.

Limitations

Beta software

This software is under active development, the core features are ready but there may be changes in appearance, stability patches and other changes until version 1.0.

Unsigned software

Signing licenses have associated costs and required setup, for now this software is unsigned which means that additional steps are required for installation:

  • Windows: Skip the installation protection screen when prompted.
  • macOS: Navigate to System Preferences → Privacy & Security → Unblock the app after attempting to open it.

macOS Testing

MacOs builds are tested on a slow, unstable virtual machine using Ventura 13.7, other versions of the OS have not been tested and it's the least tested target, please open a ticket for new issues found.

Hot plugging

New devices or disconnected devices are detected every few seconds. To add a new device to the project simply drag and drop it from the sidebar into the viewport. To replace a missing device or a device with changed ID click its node (if it exists) and then Replace device from the sidebar - it will assign the device to that node and re-establish all previous connections.

Scripts and templates

Using Lua 5.4 it's possible to program nodes for any kind MIDI processing. A few examples have been included to demonstrate how to modify and forward bytes. To test a script press Ctrl+Enter or Cmd+Enter from the code editor. Once a script is loaded into a node, it will run every time a signal is received on its input port.

Scripts can be saved as global templates to be reused in projects, to do so
click the settings icon near the code editor and then Save as template.

Development

Make sure tauri 2 requirements are met for the target platform, hit npm install and then npm start should start the application in development mode.

License

GPL 3

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.