makepad/apps/asset-ui/Cargo.toml
Admin e2616d2d45 asset-ui: analysis, masks, music, webcam, and a library that keeps up with the store
The asset browser becomes the front end for everything the AI stack can do:

  - analysis — a content analysis pass over imported assets.
  - mask_paint — paint a mask over an image for inpainting.
  - music_page — the music generation surface.
  - webcam — live capture as a generation input.
  - fast_presets, store_content — preset and store-content plumbing.

Around them the existing surfaces get the corrections the store and the video
widget forced: sprite-split and child-pass thumbnail fixes, one video widget
everywhere (opens stop fighting each other and the rail never reflows),
grouped classic/Duke import that lands 102 assets instead of a card flood,
chat that greets with silence rather than a banner, and a pipeline that
survives restarts.
2026-08-23 01:34:36 +02:00

54 lines
3.2 KiB
TOML

[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-asset-ai = { path = "../../libs/asset/ai", 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" }
# 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-asset-chat-ui = { path = "../../libs/asset/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 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" }