# `file`

```strand
element file(text -> path)
```

Keeps a file in step with the theme: `file "~/.cache/strand/colors.css"
{ template: "colors.css.tmpl"; run: ["reload-colors"] }`. Allowed at
the top level as well as in a tree, where `when` can change its
props; it draws nothing. Written atomically when its text would
change, and caught up at boot.

It takes no children.

| Prop | Type | |
| --- | --- | --- |
| `template` | `text` | A template file (relative to the config), its holes `{{ expr }}` over the theme. |
| `text` | `any` | The content as one template expression, in place of `template:`. |
| `run` | `[text]` | A command run 200 ms after the file was last written; it needs `permit exec`. |
