# Edit Rootform source

Author Dialects and Policy Packs with editor feedback, then test them against evidence.

Use [VS Code](https://docs.rootform.dev/integrations/vscode/) or [Zed](https://docs.rootform.dev/integrations/zed/) to
write `.rf.hcl` with diagnostics, completion, hover, go to definition and
formatting. Follow your editor's guide to install and configure it.

## Open a source root

Keep each Dialect or Policy Pack in its own source root. Open that directory
in your editor so related files are checked together. A workspace may contain
several roots; when you open an individual file, its directory supplies the
source root. `.rf.json` source is also supported.

Editor diagnostics use the same parser and compiler as the CLI, including
unsaved changes. Authoring needs no infrastructure plan, provider execution,
project preparation or dependency acquisition.

## Validate the behavior

Diagnostics help you correct source; they do not prove what it concludes from
an input. [Test and validate](https://docs.rootform.dev/language/test-validate/) covers fixture analysis,
formatting and compilation. A Policy must also link against the facts in a
Form and be evaluated there; the language server does not evaluate Policies.

Continue with [Write a Dialect](https://docs.rootform.dev/dialect-authoring/) or
[Write a Policy Pack](https://docs.rootform.dev/language/write-policy-pack/).
