id = "gltfjsx" name = "gltfjsx" description = "Turns GLTF 3D models into declarative, reusable React Three Fiber JSX components." homepage = "https://github.com/pmndrs/gltfjsx" executables = ["gltfjsx"] [commands] format = 1 label = "Convert GLTF to JSX" description = "Convert a .gltf or .glb model into a React component." quality = "ai-draft" base = "fig:gltfjsx" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false } [[commands.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/gltfjsx.ts" license = "MIT" [[commands.field]] id = "file" label = "Model file" type = "path" position = 0 path = { kind = "file", role = "input" } sources = ["fig"] [[commands.field]] id = "types" label = "TypeScript definitions" type = "boolean" option = ["--types", "-t"] sources = ["fig"] [[commands.field]] id = "shadows" label = "Cast and receive shadows" type = "boolean" option = ["--shadows", "-s"] sources = ["fig"] [[commands.field]] id = "meta" label = "Include metadata" description = "Include metadata as userData." type = "boolean" option = ["--meta", "-m"] sources = ["fig"] [[commands.field]] id = "verbose" label = "Verbose output" description = "Verbose output with names and empty groups." type = "boolean" option = ["--verbose", "-v"] sources = ["fig"] [[commands.field]] id = "printwidth" label = "Prettier print width" description = "Default 120." type = "integer" option = ["--printwidth", "-w"] sources = ["fig"] [[commands.field]] id = "precision" label = "Fractional digits" description = "Default 2." type = "integer" option = ["--precision", "-p"] sources = ["fig"] [[commands.field]] id = "draco" label = "Draco binary path" type = "path" option = ["--draco", "-d"] path = { kind = "any", role = "input" } sources = ["fig"] [[commands.field]] id = "root" label = "Serve root directory" description = "Directory from which the .gltf file is served." type = "path" option = ["--root", "-r"] path = { kind = "directory", role = "input" } sources = ["fig"] [[commands.field]] id = "debug" label = "Debug output" type = "boolean" option = ["--debug", "-D"] sources = ["fig"] [[commands.task]] id = "convert" label = "Convert" fields = ["file"] required = ["file"] [[commands.task]] id = "ts" label = "Convert to TypeScript" fields = ["file", "types", "shadows"] required = ["file"] set = { types = [true] } [[commands.group]] id = "basic" label = "Basic" fields = ["file", "types", "shadows"] [[commands.group]] id = "advanced" label = "Advanced" fields = ["meta", "verbose", "printwidth", "precision", "draco", "root", "debug"]