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.
54 lines
3.2 KiB
TOML
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" }
|