# `Dala.Preview.Codegen`
[🔗](https://github.com/manhvu/dala/blob/main/dev_tools/dala/preview/codegen.ex#L1)

Generates Elixir screen module source code from Dala UI trees.

Outputs Spark DSL style with snake_case entities.

UI trees use the map format: `%{type: :atom, props: %{...}, children: [...]}`.

# `extract_handlers`

Extract event handler names from a UI tree.

# `generate_dsl`

Generate DSL-style screen module source.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
