65 lines
3.4 KiB
TOML
65 lines
3.4 KiB
TOML
# synth (Makepad Synth): live-coded music. One score is its code, its own
|
|
# editor panel, its arrangement and a batch of songs written at once; it plays
|
|
# through the score engine (libs/score_live) on the app's own clock, rendered
|
|
# from the audio output callback. The song library and the downloads it plays
|
|
# with (the General MIDI SoundFont, the MIDI datasets) are installed on request.
|
|
|
|
[package]
|
|
name = "makepad-app-synth"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
license = "MIT OR Apache-2.0"
|
|
description = "Makepad Synth: live-coded music with an editor panel, an arrangement view, batches of songs and a MIDI song library"
|
|
default-run = "makepad-app-synth"
|
|
|
|
[[bin]]
|
|
name = "makepad-app-synth"
|
|
path = "src/main.rs"
|
|
|
|
[features]
|
|
default = ["tweaker"]
|
|
# The design overlay (Shift+F10 with the dev overlays on). On for development
|
|
# builds; the Builder's releases build without it (--no-default-features).
|
|
tweaker = ["dep:makepad-widgets-tweaker", "makepad-widgets/data", "makepad-widgets/dock", "makepad-widgets/fab"]
|
|
|
|
[dependencies]
|
|
makepad-widgets = { path = "../../widgets", default-features = false, features = ["fab", "pickers"] }
|
|
makepad-widgets-tweaker = { path = "../../widgets/families/tweaker", optional = true }
|
|
makepad-code-editor = { path = "../../code_editor" }
|
|
makepad-code-values = { path = "../../libs/code_values" }
|
|
makepad-look = { path = "../../libs/look" }
|
|
makepad-strict-json = { path = "../../libs/strict_json" }
|
|
# The score engine: the document, the composer, the player and its slot.
|
|
makepad-score-live = { path = "../../libs/score_live" }
|
|
makepad-score-player = { path = "../../libs/score_player" }
|
|
# The app's audio root (its transport and the score's node) is built as data
|
|
# on the audio engine.
|
|
makepad-audio-engine = { path = "../../libs/audio_engine" }
|
|
makepad-flow = { path = "../../libs/flow", default-features = false, features = ["live"] }
|
|
# The score engine's audio kernels run on the script compute VM; `makepad run`
|
|
# provides that crate from its own build, which has the `vm` feature, so the
|
|
# app's graph takes it with the same features.
|
|
makepad-script-compute = { path = "../../platform/script/compute", features = ["vm"] }
|
|
makepad-audio-synth = { path = "../../libs/audio_synth" }
|
|
# Samples a score plays by name, decoded from the samples folder.
|
|
makepad-audio-decode = { path = "../../libs/audio_decode" }
|
|
# The score's editor panel (an AI-written Splash UI run beside the code) over
|
|
# the panel kit, with the synth widgets.
|
|
makepad-editor-panel = { path = "../../libs/editor_panel" }
|
|
makepad-value-pickers = { path = "../../libs/value_pickers" }
|
|
makepad-synth-panel = { path = "../../libs/synth_panel" }
|
|
# Batches of songs written at once, rendered, scored, rated and learned from.
|
|
makepad-music-iter = { path = "../../libs/music_iter" }
|
|
# The song library (MIDI, chip and tracker music: import, index, arranger)
|
|
# and the installer of the downloads (the GM SoundFont, the datasets).
|
|
makepad-midi-library = { path = "../../libs/midi_library" }
|
|
makepad-model-install = { path = "../../libs/model_install" }
|
|
# The AI: the chat panel (the model the person picks) and the service its
|
|
# tools ride on.
|
|
makepad-app-aichat = { path = "../aichat", default-features = false, features = ["engine"] }
|
|
makepad-ai-services = { path = "../../libs/ai/services", features = ["engine"] }
|
|
|
|
[package.metadata.makepad.desktop]
|
|
name = "Makepad Synth"
|
|
identifier = "nl.makepad.synth"
|
|
icon = "resources/synth-icon.png"
|