Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

octetta/ksynth-desktop

Open more actions menu

Repository files navigation

ksynth-desktop

A native desktop application for the ksynth live-coding synthesis language. Write short vector-oriented programs, hear the result immediately, build kits and instruments, play them from a pad grid.

Sessions are compatible with ksynth web — save from the browser, load on the desktop, or vice versa.


quick start

git clone https://github.com/octetta/ksynth-desktop
cd ksynth-desktop
mkdir build && cd build
cmake ..
make -j$(nproc)
./ksynth-desktop

Type into the editor, press Ctrl+J to run. A cell appears in the notebook with a waveform preview. Click →0 to bank to slot 0. Click the slot to play it.

See BUILDING.md for full platform instructions and GUIDE.md for a complete tutorial.


what it is

ksynth-desktop is a two-pane live-coding environment:

  • left — notebook — append-only log of every run, waveforms, bank buttons
  • right — editor — write ksynth code, run it, inspect results in the REPL strip at the bottom

A slot strip across the top holds 16 audio buffers ready to trigger. A pad window turns them into a playable instrument. Sessions save and load as .json files that round-trip with the web app.

There is also a headless CLI tool (ksplay) for running .ks files directly from the command line.


dependencies

  • FLTK 1.4 — vendored as a git submodule
  • miniaudio — single-header, vendored
  • ksynth — vendored (ksynth.c / ksynth.h)
  • CMake 3.16+, a C11 compiler, a C++17 compiler

No other dependencies. No package manager required.


license

MIT — see LICENSE.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.