clap

Clap plugin bindings

Wrapper score 15/100 · tests present · no docs generated

Wraps a native library — check OS Compatibility below for platform-specific linking notes.

Summary

Latest Version 0.3.0
License MIT
CI Status Failing
Downloads 0
Last Indexed 2026-07-21 05:26

Authors

  • Morgan Holly

Installation

nimble install clap
choosenim install clap
git clone https://github.com/NimAudio/nim-clap

OS Compatibility

Platform Linux macOS Windows FreeBSD OpenBSD NetBSD Android iOS WASM Embedded
clap - - - - - - -

Dependencies

Package Version Optional
nim >= 2.0.2 No

Source

Repository https://github.com/NimAudio/nim-clap
Homepage https://github.com/NimAudio/nim-clap
Registry Source nimble_official

README

nim-clap

clap plugin api in nim. currently unfinished but includes all the basics

install with nimble install clap

i have moved the plugin framework which abstracts over the raw api to a new repo, offbeat.


tested with version 1.2, hash df8f16c. later versions may not work, try this version if you have any issues

has futhark set up but commented out. to use, put clap repo files in clap-main folder, not as a folder in that folder

supported extensions:

  • audio ports
  • note ports
  • parameters
  • latency
  • logging
  • state
  • gui
  • timers
  • transport events

known missing api sections (PRs welcome):

  • thread checking (basically empty file)
  • definitely others

building

to build, run the following command

nim compile --out:"example" --app:lib --threads:on ".../nim_clap/example.nim"

or for debugging

nim compile --verbosity:1 --hints:off --out:"example" --app:lib --forceBuild
--threads:on --lineDir:on --lineTrace:on --debuginfo:on ".../nim_clap/example.nim"

mac

then copy the binary (and .dSYM if debugging) into the provided example.clap bundle for macos. if you change the filename, you will need to change the bundle plist to have the updated name.

other platforms

i am not sure what is needed for windows or linux, but reaper at least doesn't care if it is bundled or not. i simply copied and modified the surge bundle.

documentation

to view existing generated documentation - run python3 -m http.server 7029 --directory htmldocs - visit http://localhost:7029/clap.html

to generate documentation - run nim doc --project --index:on --outdir:htmldocs src/clap.nim