[package] name = "makepad-app-asset-ui" version = "0.1.0" edition = "2021" description = "Asset UI: catalog, licensed pack import, viewers, and fleet generation over the Asset Server" license = "MIT OR Apache-2.0" [dependencies] makepad-widgets = { path = "../../widgets" } # Service wire types + fleet/affinity scheduler (transport here is # cx.http_request; the lib's blocking client is for worker-thread consumers). makepad-ai-hub = { path = "../../libs/ai/hub", default-features = false } makepad-micro-serde = { path = "../../libs/micro_serde" } makepad-base64 = { path = "../../libs/base64" } # Mesh viewer: Renderer stage for a single GLB. makepad-render = { path = "../../libs/render" } # Animated-character viewer: base-color texture extraction from the GLB # (skin.rs ignores materials by design — the caller binds the texture). makepad-gltf = { path = "../../libs/gltf" } # Splat viewer: ViewSplat + XrSceneView desktop host. makepad-xr = { path = "../../xr" } # REAL Asset Server frontend: shared session lifecycle (discovery/auth/ # retry), catalog runtimes, committed-event subscriber, verified cache. The # VJ worker owns these crates; this app consumes the public API only. makepad-asset-client = { path = "../../libs/asset/client" } makepad-asset-creator = { path = "../../libs/asset/creator" } # Shared preview/viewer widgets: the pool every host draws catalog content # with (VJ and the DJ surface adopt the same set). # The renderer feature brings the 3D faces (mesh turntable, world walker). makepad-asset-widgets = { path = "../../libs/asset/widgets", features = ["renderer"] } makepad-asset-data = { path = "../../libs/asset/data" } makepad-asset-chat = { path = "../../libs/asset/chat" } # The chat pane itself — ONE component, shared with the game sandbox: the # broker session + its worker channel, the transcript with its tool chips # and rate meter, and the list widget. This app supplies the personality # (namespace `gen`, client profile `gen`, its own client-executed tools). makepad-chat-ui = { path = "../../libs/chat_ui" } # Embedded catalog/chat broker for now: the app starts the real Asset # Server in-process instead of waiting for a LAN beacon. makepad-asset-store = { path = "../../libs/asset/store" } # Local licensed-pack compiler (Kenney Import). Same fail-closed walk as # `makepad-asset-importer --import-pack`; no network fetch. makepad-asset-importer = { path = "../../libs/asset/importer" } # The vision-annotation pass, for its VERSION only: this app draws the # annotation bar and must agree with the store on which annotator version # the catalog owes. The work itself is `annotate.asset`, a vision job the # fleet coordinator claims — nothing here runs a model. makepad-asset-annotate = { path = "../../libs/asset/annotate" } # The library is 241 MP3s and 4 WAVs: the transport has to be able to play # what the catalog actually holds, and the container has to be knowable from # the bytes when a digest-named cache object has no name to read. Zero # dependencies, and the same decoder the preview well draws with. makepad-audio-decode = { path = "../../libs/audio_decode" } # "Split audio layers": the analysis bake. Separation (BS-RoFormer on the # ggml Metal runtime), the word-aligned lyrics bake, and the ONE shared # encode/publish of both as typed side-channel files — the same crate the VJ # calls, so a track analysed here is a track a deck never has to separate. makepad-ai-stems = { path = "../../libs/ai/models/stems" } makepad-audio-lyrics = { path = "../../libs/audio_lyrics" } makepad-audio-sidechannels = { path = "../../libs/audio_sidechannels" }