Profile reference
A profile is a YAML file that defines attribute order, layout rules and stylesheet options. The built-in profiles are in crates/annealer/profiles/.
The JSON Schema (draft-07) is at crates/annealer/schema/profile.schema.json. With the modeline above and the YAML extension, VS Code validates and completes profiles.
Unknown keys are errors everywhere in a profile, so typos never go unnoticed.
Top level
normalize
Rewrites applied before classification.
layout
See Layout for details.
groups
Groups are listed in output order. Exactly one group must be the fallback, and group names must be unique.
Patterns are matched against normalized, lowercased keys: foo for foo/:foo/v-bind:foo, v-on:click for @click, v-slot:name for #name, with modifiers stripped. An exact name beats any prefix, and a longer prefix beats a shorter one. See Attribute order.
stylesheet
See Stylesheets for details.
Only the order of declarations changes; whitespace, quotes and other formatting are left to a formatter. malva's formatting options are therefore not accepted.
classOrder
The order of the classes in static class attributes (see Class order): a built-in class order name (tailwind), or a class order profile written inline. The CLI's --class-order and the JavaScript classOrder option override it.
Class order profiles
A class order profile is a YAML file of its own, passed with --class-order or classOrder, or written inline under a profile's classOrder. The JSON Schema is crates/annealer/schema/class-order.schema.json; the built-in one is crates/annealer/class-orders/tailwind.yaml.
A class with a variant that no pattern matches is unknown. Rules may only name properties listed in propertyOrder; anything else is an error.