A Flutter MIDI controller for iPhone and iPad, inspired by the KORG nanoKONTROL2. Control faders, knobs, transport, and channel buttons from your iOS device over USB to a Mac, DAW, or any MIDI-compatible app.
- 8 color-coded channel strips — fader, pan knob, and Solo / Mute / Record buttons per channel
- Transport panel — track navigation, markers, cycle, and playback controls
- USB MIDI — send MIDI to a Mac over cable (IDAM / CoreMIDI)
- nanoKONTROL2 CC mapping — default control change assignments for DAW compatibility
- Landscape-first UI — dark neumorphic design optimized for performance use
- Flutter SDK
^3.11.5 - iOS 13.1+ (primary target)
- iPhone or iPad connected to a Mac by USB for DAW or MIDI app control
git clone <your-repo-url>
cd sliderz
flutter pub get
flutter runFor a clean install after icon or native changes:
flutter clean && flutter pub get && flutter run- Connect iPhone/iPad to the Mac with a USB cable and tap Trust on the device.
- On Mac: Audio MIDI Setup → Window → Show MIDI Studio.
- Open Audio Devices, select the iPhone, and click Enable (IDAM).
- In Sliderz, tap the settings icon and select the iPhone USB destination.
- In your DAW or MIDI app, choose the iPhone MIDI input and map the controls.
Move a fader or knob in Sliderz and confirm MIDI arrives in your host app before mapping.
Default assignments follow the nanoKONTROL2 CC mode:
| Control | CC |
|---|---|
| Faders 1–8 | 0–7 |
| Knobs 1–8 | 16–23 |
| Solo 1–8 | 32–39 |
| Mute 1–8 | 48–55 |
| Record 1–8 | 64–71 |
| Track ← / → | 40 / 41 |
| Marker SET / ← / → | 43 / 44 / 45 |
| Cycle | 42 |
| Rewind / FF / Stop / Play / Record | 46 / 47 / 58 / 59 / 60 |
MIDI channel is selectable from the status bar (default: channel 1).
lib/
├── main.dart
├── core/injector.dart # Dependency injection
├── common/components/ # Shared UI (knob, fader, button)
├── controller/
│ ├── blocs/ # Business logic
│ ├── components/ # Feature UI
│ ├── models/
│ └── screens/
├── midi/
│ ├── models/ # CC mappings
│ └── services/ # MIDI I/O
└── theme/
Icons are generated from assets/app_icon.png using flutter_launcher_icons:
dart run flutter_launcher_icons- iOS / Android:
com.sliderz.app
- Flutter
- flutter_midi_command — CoreMIDI over USB on iOS
Private project — not published to pub.dev.
