MCPcopy Index your code
hub / github.com/MaddyGuthridge/FL-Studio-API-Stubs

github.com/MaddyGuthridge/FL-Studio-API-Stubs @v33.2.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v33.2.0 ↗ · + Follow
773 symbols 2,062 edges 109 files 661 documented · 86%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

FL Studio Python API Stubs

This project contains function definitions to provide intellisense while working on scripts for FL Studio's Python API, as well as a partially-complete model of FL Studio, which allows for scripts to be tested outside of FL Studio.

Online Reference

The documentation is also available as an online reference if Image-Line's own documentation isn't up to scratch.

Installation

To avoid module conflicts with other Python projects, it is recommended that you install this script in a virtual environment by following these instructions in the official Python documentation.

After activating the environment in your editor, you can install the stub modules by running the command pip install FL-Studio-API-Stubs on Windows or pip3 install FL-Studio-API-Stubs on MacOS or Linux.

Video reference for installation instructions

The Small Print

A couple of notes regarding this repo.

This Documentation isn't Complete

Although the stubs are mostly complete, there are a few functions where I don't fully understand how they work. These functions have a HELP WANTED: label in their documentation. If you happen to know how to use one, I'd love it if you helped out by improving the documentation! I may also have incorrect definitions for some functions. Please create an issue if you find anything incorrect.

Differences to the Official Implementation

A small number of tweaks have been made to these stubs in order to ease code writing. These shouldn't have any functional impact on the behavior of the API compared to the implied behavior from the stubs, but should help clarify some properties of certain functions.

  • Functions where parameters or returns are boolean by nature are listed as using a bool type, even though the implementation uses the integers 0 and 1. This change should help to describe the context in which the functions should be called when writing scripts, which in a language like Python is far more important than the actual implementation of the functions.

Development

Dependencies for this project are managed using Poetry. You'll need to install Poetry to develop it.

To install the required dependencies, run poetry install.

Core symbols most depended-on inside this repo

getState
called by 76
src/fl_model/state.py
checkGroupIndex
called by 33
src/fl_model/channels.py
getChannelsInGroup
called by 17
src/fl_model/channels.py
func
called by 13
tests/emulation/_device.py
checkIndex
called by 11
src/patterns/__helpers.py
getChannelIndex
called by 9
src/channels/__properties.py
getConfig
called by 9
src/fl_model/configuration/load_data.py
resetState
called by 7
src/fl_model/state.py

Shape

Function 608
Method 114
Class 48
Route 3

Languages

Python100%

Modules by API surface

src/mixer/__tracks.py36 symbols
tests/patterns/indexes_test.py35 symbols
tests/general/undo_test.py31 symbols
src/channels/__properties.py30 symbols
tests/channels/index_test.py29 symbols
src/screen/__init__.py28 symbols
src/utils/__init__.py27 symbols
src/playlist/__performance.py24 symbols
src/enveditor/__sample.py23 symbols
src/fl_model/emulation.py21 symbols
src/ui/__fl_state.py19 symbols
src/patterns/__properties.py19 symbols

For agents

$ claude mcp add FL-Studio-API-Stubs \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page