Codegen for Elm
npm install elm-codegenElm CodeGen is an Elm package and CLI tool for generating Elm code.
- Here we are on NPM
- And the code docs on the Elm package website
The goal is to be easier to write and more maintainable than that string template you have lying around. 😏
Here's what this tool does for you in order to make generating code simpler.
1. Automatic imports — Import declarations are calculated.
2. Built in type inference — The types for your generated code are inferred, which means generated things can figure out their own type signatures.
3. Use existing packages easily — For generating code that uses a specific _library_ such as elm-ui, the elm-codegen CLI can create some Elm code to help you out.
Check out the Using packages guide to get a better idea of what this looks like!
To get started, here's a small example to give you an idea of what the code looks like!
``elm`
Elm.declaration "anExample"
(Elm.record
[ ("name", Elm.string "a fancy string!")
, ("fancy", Elm.bool True)
]
)
|> Elm.ToString.declaration
The above will generate the following string:
`elm`
anExample : { name : String, fancy : Bool }
anExample =
{ name = "a fancy string!"
, fancy = True
}
- Getting started
- Writing a generator
- Using packages/helpers
- Running via TypeScript
And finally, the elm-codegen package documentation.
``
npm install -g elm-codegen
Then you can start a codegen project using:
```
elm-codegen init