mirror of
https://github.com/ash-project/ash.git
synced 2024-09-20 13:33:20 +12:00
1.3 KiB
1.3 KiB
Development Utilities
ElixirSense Plugin
The Ash ElixirSense plugin offers custom auto complete inside of any Ash DSL module (i.e resource/api/flow/registry)
With the release of ElixirLS 0.10.0, there is only one requirement to make this work for your project, which is to add elixir_sense
as a dev dependency. We're exploring ways to remove this requirement in the future so that it works with entirely automatically.
{:elixir_sense, github: "elixir-lsp/elixir_sense", only: [:dev, :test]}
Formatter plugin
The underlying DSL tooling Spark
has a formatter plugin that can help you keep your resources consistent and neat.
Adding the plugin
Add the following to your .formatter.exs
[
plugins: [Spark.Formatter], # <- add the plugin here
inputs: ...
]
Configuration
config :spark, :formatter,
[
"Ash.Resource": [
section_order: [
:resource,
:identities,
:attributes,
:relationships,
...
]
],
# If you use a different module than Ash.Resource
"MyApp.Resource": [
type: Ash.Resource,
# What extensions might be added by your base module
extensions: [...],
section_order: [
:resource,
:identities,
:attributes,
:relationships,
...
]
]
]