mirror of
https://github.com/ash-project/ash.git
synced 2024-09-20 21:43:02 +12:00
1.4 KiB
1.4 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]}
Resource Formatter
Ash resources often have a lot of DSL sections, and in order to increase the consistency of your resources, Ash ships with an elixir formatter plugin that allows for declaring a static section order and ensuring all resources honor it.
Connecting to the formatter
Add the following to your .formatter.exs
[
plugins: [Ash.ResourceFormatter], # <- add the plugin here
inputs: ...
]
Configuration
config :ash, :formatter,
# If you have a custom module that you use instead of `Ash.Resource` (a.k.a a "base resource"), you can configure it here.
using_modules: [Ash.Resource, MyApp.Resource],
# these sections will always appear in this order. Any other sections may still appear before/after/around them, so you typically want
# to include an order for every section that may appear in your resources.
section_order: [
:resource,
:identities,
:attributes,
:relationships,
...
]